cnpmcore
Version:
18 lines (17 loc) • 846 B
TypeScript
import { ImplDecorator } from '@eggjs/tegg';
import { RegistryType } from '../../../common/enum/Registry';
import { Registry } from '../../../core/entity/Registry';
import { EggHttpClient, EggLogger } from 'egg';
export declare const CHANGE_STREAM_ATTRIBUTE = "CHANGE_STREAM_ATTRIBUTE";
export type ChangesStreamChange = {
seq: string;
fullname: string;
};
export declare abstract class AbstractChangeStream {
protected logger: EggLogger;
protected httpclient: EggHttpClient;
abstract getInitialSince(registry: Registry): Promise<string>;
abstract fetchChanges(registry: Registry, since: string): AsyncGenerator<ChangesStreamChange>;
getChangesStreamUrl(registry: Registry, since: string, limit?: number): string;
}
export declare const RegistryChangesStream: ImplDecorator<AbstractChangeStream, typeof RegistryType>;