UNPKG

@message-queue-toolkit/core

Version:

Useful utilities, interfaces and base classes for message queue handling. Supports AMQP and SQS with a common abstraction on top currently

17 lines (16 loc) 856 B
import type { Either } from '@lokalise/node-core'; import type { CommonEventDefinition } from '@message-queue-toolkit/schemas'; import type { ZodSchema } from 'zod/v4'; export type MessageSchemaContainerOptions<MessagePayloadSchemas extends object> = { messageDefinitions: readonly CommonEventDefinition[]; messageSchemas: readonly ZodSchema<MessagePayloadSchemas>[]; messageTypeField?: string; }; export declare class MessageSchemaContainer<MessagePayloadSchemas extends object> { readonly messageDefinitions: Record<string | symbol, CommonEventDefinition>; private readonly messageSchemas; private readonly messageTypeField?; constructor(options: MessageSchemaContainerOptions<MessagePayloadSchemas>); resolveSchema(message: Record<string, any>): Either<Error, ZodSchema<MessagePayloadSchemas>>; private resolveMap; }