import { Guid } from '@dolittle/rudiments';
import { Constructor } from '@dolittle/types';
import { IClientBuildResults, IModelBuilder } from '@dolittle/sdk.common';
import { ProjectionId } from '../ProjectionId';
import { IProjectionsBuilder } from './IProjectionsBuilder';
import { IProjectionBuilder } from './IProjectionBuilder';
/**
 * Represents an implementation of {@link IProjectionsBuilder}.
 */
export declare class ProjectionsBuilder extends IProjectionsBuilder {
    private readonly _modelBuilder;
    private readonly _buildResults;
    /**
     * Initialises a new instance of the {@link ProjectionsBuilder} class.
     * @param {IModelBuilder} _modelBuilder - For binding projections to identifiers.
     * @param {IClientBuildResults} _buildResults - For keeping track of build results.
     */
    constructor(_modelBuilder: IModelBuilder, _buildResults: IClientBuildResults);
    /** @inheritdoc */
    create(projectionId: string | ProjectionId | Guid): IProjectionBuilder;
    /** @inheritdoc */
    register<T = any>(type: Constructor<T>): IProjectionsBuilder;
}
//# sourceMappingURL=ProjectionsBuilder.d.ts.map