import { AggregateRoot } from '../../../api/tactical/aggregate/aggregate-root'; import { CreateAggregateCommandHandler } from './create-aggregate.command-handler'; import { AggregateId } from '../../../api/tactical/aggregate/aggregate-id'; import { CreateAggregateCommand } from './create-aggregate.command'; export declare function createAggregateCommandHandlerFactory, C extends CreateAggregateCommand>(createAggregateCommandHandler: CreateAggregateCommandHandler, aggregateName: string): CreateAggregateCommandHandlerImpl; export declare class CreateAggregateCommandHandlerImpl, C extends CreateAggregateCommand> { private readonly createAggregateCommandHandler; private readonly aggregateType; private readonly aggregateFactoryArchive; private readonly aggregateRepositoryArchive; private readonly domainEventPublisher; private readonly commandType; constructor(createAggregateCommandHandler: CreateAggregateCommandHandler, aggregateType: string); handleCommand(command: C): void; forCommand(command: C): boolean; private createCommandInstance; }