@kurrent/kurrentdb-client
Version:
KurrentDB gRPC NodeJS Client SDK
19 lines (18 loc) • 1.08 kB
TypeScript
import { Transform, TransformCallback, TransformOptions } from "stream";
import type { ClientDuplexStream } from "@grpc/grpc-js";
import { ReadReq, ReadResp } from "../../../generated/persistent_pb";
import { ConvertGrpcEvent } from "../../utils";
import type { PersistentAction, PersistentSubscriptionBase, ResolvedEvent } from "../../types";
type CreateGRPCStream = () => Promise<ClientDuplexStream<ReadReq, ReadResp>>;
export declare class PersistentSubscriptionImpl<E> extends Transform implements PersistentSubscriptionBase<E> {
#private;
protected convertGrpcEvent: ConvertGrpcEvent<ReadResp.ReadEvent, E>;
id?: string;
constructor(createGRPCStream: CreateGRPCStream, convertGrpcEvent: ConvertGrpcEvent<ReadResp.ReadEvent, E>, options: TransformOptions);
private initialize;
_transform(resp: ReadResp, _encoding: string, next: TransformCallback): void;
ack(...events: ResolvedEvent[]): Promise<void>;
nack(action: PersistentAction, reason: string, ...events: ResolvedEvent[]): Promise<void>;
unsubscribe(): Promise<void>;
}
export {};