import { Constructor } from '@dolittle/types';
/**
 * Defines a builder for registering instances of {@link AggregateRootType} from implementations of {@link AggregateRoot}.
 */
export declare abstract class IAggregateRootsBuilder {
    /**
     * Register the type as an {@link AggregateRootType}.
     * @param {Constructor<T>} type - The type to register as an {@link AggregateRootType}.
     * @returns {IAggregateRootsBuilder} The builder for continuation.
     * @template T The type of the aggregate root.
     */
    abstract register<T = any>(type: Constructor<T>): IAggregateRootsBuilder;
}
//# sourceMappingURL=IAggregateRootsBuilder.d.ts.map