import { IMaintenanceOperation, OperationResultType } from "../OperationAbstractions.js";
import { RevisionsConfiguration } from "../RevisionsConfiguration.js";
import { RavenCommand } from "../../../Http/RavenCommand.js";
import { HttpRequestParameters } from "../../../Primitives/Http.js";
import { Stream } from "node:stream";
import { DocumentConventions } from "../../Conventions/DocumentConventions.js";
import { ServerNode } from "../../../Http/ServerNode.js";
import { IRaftCommand } from "../../../Http/IRaftCommand.js";
export declare class ConfigureRevisionsOperation implements IMaintenanceOperation<ConfigureRevisionsOperationResult> {
    private readonly _configuration;
    get resultType(): OperationResultType;
    constructor(configuration: RevisionsConfiguration);
    getCommand(conventions: DocumentConventions): RavenCommand<ConfigureRevisionsOperationResult>;
}
export declare class ConfigureRevisionsCommand extends RavenCommand<ConfigureRevisionsOperationResult> implements IRaftCommand {
    private readonly _configuration;
    constructor(configuration: RevisionsConfiguration);
    get isReadRequest(): boolean;
    createRequest(node: ServerNode): HttpRequestParameters;
    setResponseAsync(bodyStream: Stream, fromCache: boolean): Promise<string>;
    getRaftUniqueRequestId(): string;
}
export declare class ConfigureRevisionsOperationResult {
    raftCommandIndex: number;
}
//# sourceMappingURL=ConfigureRevisionsOperation.d.ts.map