import { AsyncIterableX } from '../asynciterablex';
import { OperatorAsyncFunction } from '../../interfaces';
export declare class ScanRightAsyncIterable<T, R> extends AsyncIterableX<R> {
    private _source;
    private _fn;
    private _seed?;
    private _hasSeed;
    constructor(source: AsyncIterable<T>, fn: (acc: R, x: T, index: number) => R | Promise<R>, seed: R[]);
    [Symbol.asyncIterator](): AsyncGenerator<R, void, unknown>;
}
export declare function scanRight<T, R = T>(accumulator: (previousValue: R, currentValue: T, currentIndex: number) => R | Promise<R>, seed?: never[]): OperatorAsyncFunction<T, R>;
export declare function scanRight<T, R = T>(accumulator: (previousValue: R, currentValue: T, currentIndex: number) => R | Promise<R>, seed?: R): OperatorAsyncFunction<T, R>;
