/** * @packageDocumentation * @module std */ import { IBidirectionalContainer } from "../ranges/container/IBidirectionalContainer"; import { IReversableIterator } from "./IReversableIterator"; import { IReverseIterator } from "./IReverseIterator"; import { IPointer } from "../functional/IPointer"; import { IForwardContainer } from "../ranges/container/IForwardContainer"; import { IInsert } from "../internal/container/partial/IInsert"; import { IPushFront } from "../internal/container/partial/IPushFront"; import { IPushBack } from "../internal/container/partial/IPushBack"; import { InsertIterator } from "./InsertIterator"; import { FrontInsertIterator } from "./FrontInsertIterator"; import { BackInsertIterator } from "./BackInsertIterator"; import { IForwardIterator } from "./IForwardIterator"; /** * Iterator to the first element. * * @param container Target container. * @return Iterator to the first element. */ export declare function begin | IForwardContainer>(container: Container): IForwardContainer.IteratorType; /** * Iterator to the end. * * @param container Target container. * @return Iterator to the end. */ export declare function end | IForwardContainer>(container: Container): IForwardContainer.IteratorType; /** * Get reverse iterator to the first element in reverse. * * @param container Target container. * @return The reverse iterator to the first. */ export declare function rbegin | IBidirectionalContainer>(container: Container): IBidirectionalContainer.ReverseIteratorType; /** * Get reverse iterator to the reverse end. * * @param container Target container. * @return The reverse iterator to the end. */ export declare function rend | IBidirectionalContainer>(container: Container): IBidirectionalContainer.ReverseIteratorType; /** * Construct reverse iterator. * * @param it Target iterator that reversable. * @return The reverse iterator object. */ export declare function make_reverse_iterator, IteratorT, ReverseT>, ReverseT extends IReverseIterator, IteratorT, ReverseT>>(it: IteratorT): ReverseT; /** * Construct insert iterator. * * @param container Target container. * @param it Iterator to the first insertion position. * @return The {@link InsertIterator insert iterator} object. */ export declare function inserter, Iterator extends IForwardIterator, Iterator>>(container: Container, it: Iterator): InsertIterator; /** * Construct front insert iterator. * * @param source Target container. * @return The {@link FrontInsertIterator front insert iterator} object. */ export declare function front_inserter>>(source: Source): FrontInsertIterator; /** * Construct back insert iterator. * * @param source Target container. * @return The {@link back insert iterator} object. */ export declare function back_inserter | IPushBack>(source: Source): BackInsertIterator>; //# sourceMappingURL=factory.d.ts.map