import type { Fn } from "@thi.ng/api";
import type { Transducer } from "./api.js";
/**
* Transducer. Similar to {@link map}, but only transforms every `n`-th input
* value and passes intermediate values unchanged downstream.
*
* @remarks
* The optional `offset` arg can be used to adjust the number of inputs before
* the first transformation occurs (default 0).
*
* @example
* ```ts tangle:../export/map-nth.ts
* import { mapNth, range } from "@thi.ng/transducers";
*
* console.log(
* [...mapNth(3, (x) => `*${x}*`, range(1, 10))]
* );
* // [ "*1*", 2, 3, "*4*", 5, 6, "*7*", 8, 9 ]
*
* // with offset
* console.log(
* [...mapNth(3, 5, (x) => x * 100, range(1, 10))]
* );
* // [ 1, 2, 3, 4, 5, 600, 7, 8, 900 ]
* ```
*
* @param n - step size
* @param fn - transformation function
*/
export declare function mapNth(n: number, fn: Fn): Transducer;
export declare function mapNth(n: number, offset: number, fn: Fn): Transducer;
export declare function mapNth(n: number, fn: Fn, src: Iterable): IterableIterator;
export declare function mapNth(n: number, offset: number, fn: Fn, src: Iterable): IterableIterator;
//# sourceMappingURL=map-nth.d.ts.map