import { type Constructor, type HandleMessageOptions } from "@dugongjs/core";
import { type DynamicModule, type ModuleMetadata } from "@nestjs/common";
import type { InboundMessageMapperProvider, MessageConsumerProvider } from "../providers/module-providers.js";
import { IQueryModelProjectionHandler } from "./i-query-model-projection-handler.js";
export type QueryModelProjectionConsumerModuleOptions = {
    module?: Pick<ModuleMetadata, "imports" | "providers">;
    queryModelProjectionHandler: Constructor<IQueryModelProjectionHandler<any>>;
    handleMessageOptions?: HandleMessageOptions;
    messageBroker?: Partial<MessageConsumerProvider> & Partial<InboundMessageMapperProvider>;
};
export declare class QueryModelProjectionConsumerModule {
    static register(options: QueryModelProjectionConsumerModuleOptions): DynamicModule;
}
