import { RulesController } from "./rules.controller";
import { QueryModel } from "../models/QueryModel";
import { RequestOptions } from "./query.controller";
import { HttpClientController } from "./http-client.controller";
import { AuthController } from "./auth.controller";
export declare class UpdateController {
    private readonly domain;
    private readonly queryModel;
    private readonly appName;
    private readonly httpClientController;
    private readonly rulesController;
    private readonly authController;
    private updateModel;
    private _upsert;
    constructor(domain: string, queryModel: QueryModel, appName: string, httpClientController: HttpClientController, rulesController: RulesController, authController: AuthController);
    set(field: string, value: any): UpdateController;
    upsert(value?: boolean): this;
    doc<T extends object>(doc: T): UpdateController;
    increment(field: string, amount?: number): UpdateController;
    decrement(field: string, amount?: number): UpdateController;
    private build;
    update(options?: RequestOptions): Promise<any>;
}
