import { Sequence } from '../../core'; import { compose } from '../../../../helper/compose'; compose(Sequence, class extends Sequence { public override ap(this: Sequence<(a: a) => z, unknown>, a: Sequence): Sequence>, Sequence.Iterator]> public override ap(this: Sequence<(a: a, b: b) => z, unknown>, a: Sequence): Sequence<(b: b) => z, [Sequence.Iterator>, Sequence.Iterator]> public override ap(this: Sequence<(a: a, b: b, c: c) => z, unknown>, a: Sequence): Sequence<(b: b, c: c) => z, [Sequence.Iterator>, Sequence.Iterator]> public override ap(this: Sequence<(a: a, b: b, c: c, d: d) => z, unknown>, a: Sequence): Sequence<(b: b, c: c, d: d) => z, [Sequence.Iterator>, Sequence.Iterator]> public override ap(this: Sequence<(a: a, b: b, c: c, d: d, e: e) => z, unknown>, a: Sequence): Sequence<(b: b, c: c, d: d, e: e) => z, [Sequence.Iterator>, Sequence.Iterator]> public override ap(this: Sequence<(...as: unknown[]) => z, unknown>, a: Sequence): Sequence>, Sequence.Iterator]> { return Sequence.ap(this, a); } });