RaptorAggregateDefinition

fun <Aggregate : RaptorAggregate<Id, Command, Change>, Id : RaptorAggregateId, Command : RaptorAggregateCommand<Id>, Change : RaptorAggregateChange<Id>> RaptorAggregateDefinition(aggregateClass: KClass<Aggregate>, changeClass: KClass<Change>, changeDefinitions: Set<RaptorAggregateChangeDefinition<Id, out Change>>, commandClass: KClass<Command>, commandDefinitions: Set<RaptorAggregateCommandDefinition<Id, out Command>>, discriminator: String, factory: RaptorAggregateFactory<Aggregate, Id>, idClass: KClass<Id>, projectionDefinition: RaptorAggregateProjectionDefinition<*, *, Change>? = null)