import { IForwardContainer } from "../container/IForwardContainer"; import { IForwardIterator } from "../../iterator/IForwardIterator"; import { IPointer } from "../../functional/IPointer"; import { Writeonly } from "../../internal/functional/Writeonly"; declare type UnaryTransformer | IForwardContainer, OutputIterator extends IForwardIterator, OutputIterator>> = (val: IForwardContainer.ValueType) => IPointer.ValueType; declare type BinaryTransformer, OutputIterator>> = (x: IPointer.ValueType, y: IPointer.ValueType) => IPointer.ValueType; declare type Operator | IForwardContainer, Range2 extends Array | IForwardContainer = Range1> = (x: IForwardContainer.ValueType, y: IForwardContainer.ValueType) => IForwardContainer.ValueType; export declare function iota | IForwardContainer>>(range: Range, value: number): void; export declare function accumulate | IForwardContainer>(range: Range, init: IForwardContainer.ValueType, op?: Operator): IForwardContainer.ValueType; export declare function inner_product | IForwardContainer, Range2 extends Array | IForwardContainer>(range1: Range1, range2: Range2, value: IForwardContainer.ValueType, adder?: Operator, multiplier?: Operator): IForwardContainer.ValueType; export declare function adjacent_difference | IForwardContainer, OutputIterator extends Writeonly, OutputIterator>>>(range: Range, output: OutputIterator, subtracter?: Operator): OutputIterator; export declare function partial_sum | IForwardContainer, OutputIterator extends Writeonly, OutputIterator>>>(range: Range, output: OutputIterator, adder?: Operator): OutputIterator; export declare function inclusive_scan | IForwardContainer, OutputIterator extends Writeonly, OutputIterator>>>(range: Range, output: OutputIterator, adder?: Operator, init?: IForwardContainer.ValueType): OutputIterator; export declare function exclusive_scan | IForwardContainer, OutputIterator extends Writeonly, OutputIterator>>>(range: Range, output: OutputIterator, init: IForwardContainer.ValueType, adder?: Operator): OutputIterator; export declare function transform_inclusive_scan | IForwardContainer, OutputIterator extends IForwardIterator, OutputIterator>>(range: Range, output: OutputIterator, binary: BinaryTransformer, unary: UnaryTransformer, init?: IForwardContainer.ValueType): OutputIterator; export declare function transform_exclusive_scan | IForwardContainer, OutputIterator extends IForwardIterator, OutputIterator>>(range: Range, output: OutputIterator, init: IForwardContainer.ValueType, binary: BinaryTransformer, unary: UnaryTransformer): OutputIterator; export {}; //# sourceMappingURL=operations.d.ts.map