import { DomainEventHandler } from '../../../api/event/domain-event.handler'; import { DomainEventType } from '../../../api/event/domain-event-type'; import { AggregateArchive } from '../../../../common/archive/aggregate.archive'; import { AggregateId } from '../../../api/tactical/aggregate/aggregate-id'; import { DomainEvent } from '../../../api/event/domain-event'; export declare abstract class EventDrivenRepository, V> extends AggregateArchive implements DomainEventHandler { protected constructor(defaultValues?: V); abstract forEvent(): DomainEventType; handle(event: E): void; }