import { Constructor } from '@dolittle/types'; import { GenerationLike } from '@dolittle/sdk.artifacts'; import { Decorators } from '@dolittle/sdk.common'; import { EventTypeIdLike } from '@dolittle/sdk.events'; import { KeySelectorBuilderCallback } from './KeySelectorBuilderCallback'; import { OnDecoratedProjectionMethod } from './OnDecoratedProjectionMethod'; /** * Decorator for decorating projection on methods. * @param {Constructor} type - The type of the event to handle. * @param {KeySelectorBuilderCallback} keySelectorCallback - The callback to build the key selector. * @returns {Decorators.Decorator} The decorator. * @template TEvent The event type to handle. */ export declare function on(type: Constructor, keySelectorCallback: KeySelectorBuilderCallback): Decorators.Decorator; /** * Decorator for decorating projection on methods. * @param {EventTypeIdLike} eventTypeId - The event type id to handle. * @param {KeySelectorBuilderCallback} keySelectorCallback - The callback to build the key selector. * @returns {Decorators.Decorator} The decorator. */ export declare function on(eventTypeId: EventTypeIdLike, keySelectorCallback: KeySelectorBuilderCallback): Decorators.Decorator; /** * Decorator for decorating projection on methods. * @param {EventTypeIdLike} eventTypeId - The event type id to handle. * @param {GenerationLike} [generation] - The optional generation of the event type to handle. * @param {KeySelectorBuilderCallback} keySelectorCallback - The callback to build the key selector. * @returns {Decorators.Decorator} The decorator. */ export declare function on(eventTypeId: EventTypeIdLike, generation: GenerationLike, keySelectorCallback: KeySelectorBuilderCallback): Decorators.Decorator; /** * Gets the decorated projection on methods of the specified class. * @param {Constructor} type - The class to get the decorated projection on methods for. * @returns {OnDecoratedProjectionMethod[]} The decorated projection on methods. */ export declare function getOnDecoratedMethods(type: Constructor): OnDecoratedProjectionMethod[]; //# sourceMappingURL=onDecorator.d.ts.map