UNPKG

@dolittle/sdk.events.handling

Version:

Dolittle is a decentralized, distributed, event-driven microservice platform built to harness the power of events.

36 lines 1.82 kB
import { IEquatable } from '@dolittle/rudiments'; import { IClientBuildResults } from '@dolittle/sdk.common'; import { IServiceProviderBuilder } from '@dolittle/sdk.dependencyinversion'; import { IEventTypes } from '@dolittle/sdk.events'; import { EventHandlerDecoratedType } from './EventHandlerDecoratedType'; import { IEventHandler } from '../IEventHandler'; /** * Represents a builder for building an event handler from a class. * @template T The event handler class type. */ export declare class EventHandlerClassBuilder<T> implements IEquatable { readonly type: EventHandlerDecoratedType; readonly instance?: T | undefined; private readonly _bindingCallback; /** * Initialises a new instance of the {@link EventHandlerClassBuilder} class. * @param {EventHandlerDecoratedType} type - The decorated event handler type of the class. * @param {T} [instance] - An optional instance of the class to use when processing. */ constructor(type: EventHandlerDecoratedType, instance?: T | undefined); /** @inheritdoc */ equals(other: any): boolean; /** * Builds the event handler. * @param {IEventTypes} eventTypes - For event types resolution. * @param {IServiceProviderBuilder} bindings - For registering the bindings for the event handler class. * @param {IClientBuildResults} results - For keeping track of build results. * @returns {IEventHandler | undefined} The built event handler if successful. */ build(eventTypes: IEventTypes, bindings: IServiceProviderBuilder, results: IClientBuildResults): IEventHandler | undefined; private tryAddAllEventHandlerMethods; private createEventHandlerMethod; private tryGetEventTypeFromMethod; private eventTypeIsId; } //# sourceMappingURL=EventHandlerClassBuilder.d.ts.map