UNPKG

@sprucelabs/spruce-event-utils

Version:

Some helpful utilities to speed up working with Mercury! 🚅

22 lines (21 loc) • 1.25 kB
import { MercuryAggregateResponse, MercurySingleResponse } from '@sprucelabs/mercury-types'; type MercuryAggregateResponseWithoutErrorInstances = Omit<MercuryAggregateResponse<any>, 'responses'> & { responses: MercurySingleResponseWithoutErrorInstances[]; }; type MercurySingleResponseWithoutErrorInstances = Omit<MercurySingleResponse<any>, 'errors'> & { errors?: any[]; }; declare const eventResponseUtil: { mutatingMapAggregateResponseErrorsToSpruceErrors<R extends MercuryAggregateResponse<any> | MercuryAggregateResponseWithoutErrorInstances, T extends { prototype: any; }>(results: R, ClassRef: T): MercuryAggregateResponse<any>; mutatingMapSingleResonseErrorsToSpruceErrors<R extends MercurySingleResponse<any>, T extends { prototype: any; }>(response: R, ClassRef: T): R; getFirstResponseOrThrow<R extends MercuryAggregateResponse<any>>(emitResponse: R): NonNullable<R["responses"][number]["payload"]>; getAllResponsePayloadsAndErrors<R extends MercuryAggregateResponse<any>, T extends new (...args: any) => any>(emitResponse: R, ClassRef: T): { payloads: NonNullable<R["responses"][number]["payload"]>[]; errors?: InstanceType<T>[]; }; }; export default eventResponseUtil;