/**
 * Generated by the protoc-gen-ts.  DO NOT EDIT!
 * compiler version: 3.19.1
 * source: google/firestore/v1/write.proto
 * git: https://github.com/thesayyn/protoc-gen-ts */
import * as dependency_1 from "./bloom_filter";
import * as dependency_2 from "./common";
import * as dependency_3 from "./document";
import * as dependency_4 from "./../../protobuf/timestamp";
import * as pb_1 from "google-protobuf";
export declare class Write extends pb_1.Message {
    #private;
    constructor(data?: any[] | ({
        update_mask?: dependency_2.DocumentMask;
        update_transforms?: DocumentTransformFieldTransform[];
        current_document?: dependency_2.Precondition;
    } & (({
        update?: dependency_3.Document;
        delete?: never;
        transform?: never;
    } | {
        update?: never;
        delete?: string;
        transform?: never;
    } | {
        update?: never;
        delete?: never;
        transform?: DocumentTransform;
    }))));
    get update(): dependency_3.Document;
    set update(value: dependency_3.Document);
    get has_update(): boolean;
    get delete(): string;
    set delete(value: string);
    get has_delete(): boolean;
    get transform(): DocumentTransform;
    set transform(value: DocumentTransform);
    get has_transform(): boolean;
    get update_mask(): dependency_2.DocumentMask;
    set update_mask(value: dependency_2.DocumentMask);
    get has_update_mask(): boolean;
    get update_transforms(): DocumentTransformFieldTransform[];
    set update_transforms(value: DocumentTransformFieldTransform[]);
    get current_document(): dependency_2.Precondition;
    set current_document(value: dependency_2.Precondition);
    get has_current_document(): boolean;
    get operation(): "none" | "transform" | "update" | "delete";
    static fromObject(data: {
        update?: ReturnType<typeof dependency_3.Document.prototype.toObject>;
        delete?: string;
        transform?: ReturnType<typeof DocumentTransform.prototype.toObject>;
        update_mask?: ReturnType<typeof dependency_2.DocumentMask.prototype.toObject>;
        update_transforms?: ReturnType<typeof DocumentTransformFieldTransform.prototype.toObject>[];
        current_document?: ReturnType<typeof dependency_2.Precondition.prototype.toObject>;
    }): Write;
    toObject(): {
        update?: ReturnType<typeof dependency_3.Document.prototype.toObject>;
        delete?: string;
        transform?: ReturnType<typeof DocumentTransform.prototype.toObject>;
        update_mask?: ReturnType<typeof dependency_2.DocumentMask.prototype.toObject>;
        update_transforms?: ReturnType<typeof DocumentTransformFieldTransform.prototype.toObject>[];
        current_document?: ReturnType<typeof dependency_2.Precondition.prototype.toObject>;
    };
    serialize(): Uint8Array;
    serialize(w: pb_1.BinaryWriter): void;
    static deserialize(bytes: Uint8Array | pb_1.BinaryReader): Write;
    serializeBinary(): Uint8Array;
    static deserializeBinary(bytes: Uint8Array): Write;
}
export declare class DocumentTransform extends pb_1.Message {
    #private;
    constructor(data?: any[] | {
        document?: string;
        field_transforms?: DocumentTransformFieldTransform[];
    });
    get document(): string;
    set document(value: string);
    get field_transforms(): DocumentTransformFieldTransform[];
    set field_transforms(value: DocumentTransformFieldTransform[]);
    static fromObject(data: {
        document?: string;
        field_transforms?: ReturnType<typeof DocumentTransformFieldTransform.prototype.toObject>[];
    }): DocumentTransform;
    toObject(): {
        document?: string;
        field_transforms?: ReturnType<typeof DocumentTransformFieldTransform.prototype.toObject>[];
    };
    serialize(): Uint8Array;
    serialize(w: pb_1.BinaryWriter): void;
    static deserialize(bytes: Uint8Array | pb_1.BinaryReader): DocumentTransform;
    serializeBinary(): Uint8Array;
    static deserializeBinary(bytes: Uint8Array): DocumentTransform;
}
export declare class DocumentTransformFieldTransform extends pb_1.Message {
    #private;
    constructor(data?: any[] | ({
        field_path?: string;
    } & (({
        set_to_server_value?: DocumentTransformFieldTransformServerValue;
        increment?: never;
        maximum?: never;
        minimum?: never;
        append_missing_elements?: never;
        remove_all_from_array?: never;
    } | {
        set_to_server_value?: never;
        increment?: dependency_3.Value;
        maximum?: never;
        minimum?: never;
        append_missing_elements?: never;
        remove_all_from_array?: never;
    } | {
        set_to_server_value?: never;
        increment?: never;
        maximum?: dependency_3.Value;
        minimum?: never;
        append_missing_elements?: never;
        remove_all_from_array?: never;
    } | {
        set_to_server_value?: never;
        increment?: never;
        maximum?: never;
        minimum?: dependency_3.Value;
        append_missing_elements?: never;
        remove_all_from_array?: never;
    } | {
        set_to_server_value?: never;
        increment?: never;
        maximum?: never;
        minimum?: never;
        append_missing_elements?: dependency_3.ArrayValue;
        remove_all_from_array?: never;
    } | {
        set_to_server_value?: never;
        increment?: never;
        maximum?: never;
        minimum?: never;
        append_missing_elements?: never;
        remove_all_from_array?: dependency_3.ArrayValue;
    }))));
    get field_path(): string;
    set field_path(value: string);
    get set_to_server_value(): DocumentTransformFieldTransformServerValue;
    set set_to_server_value(value: DocumentTransformFieldTransformServerValue);
    get has_set_to_server_value(): boolean;
    get increment(): dependency_3.Value;
    set increment(value: dependency_3.Value);
    get has_increment(): boolean;
    get maximum(): dependency_3.Value;
    set maximum(value: dependency_3.Value);
    get has_maximum(): boolean;
    get minimum(): dependency_3.Value;
    set minimum(value: dependency_3.Value);
    get has_minimum(): boolean;
    get append_missing_elements(): dependency_3.ArrayValue;
    set append_missing_elements(value: dependency_3.ArrayValue);
    get has_append_missing_elements(): boolean;
    get remove_all_from_array(): dependency_3.ArrayValue;
    set remove_all_from_array(value: dependency_3.ArrayValue);
    get has_remove_all_from_array(): boolean;
    get transform_type(): "none" | "set_to_server_value" | "increment" | "maximum" | "minimum" | "append_missing_elements" | "remove_all_from_array";
    static fromObject(data: {
        field_path?: string;
        set_to_server_value?: DocumentTransformFieldTransformServerValue;
        increment?: ReturnType<typeof dependency_3.Value.prototype.toObject>;
        maximum?: ReturnType<typeof dependency_3.Value.prototype.toObject>;
        minimum?: ReturnType<typeof dependency_3.Value.prototype.toObject>;
        append_missing_elements?: ReturnType<typeof dependency_3.ArrayValue.prototype.toObject>;
        remove_all_from_array?: ReturnType<typeof dependency_3.ArrayValue.prototype.toObject>;
    }): DocumentTransformFieldTransform;
    toObject(): {
        field_path?: string;
        set_to_server_value?: DocumentTransformFieldTransformServerValue;
        increment?: ReturnType<typeof dependency_3.Value.prototype.toObject>;
        maximum?: ReturnType<typeof dependency_3.Value.prototype.toObject>;
        minimum?: ReturnType<typeof dependency_3.Value.prototype.toObject>;
        append_missing_elements?: ReturnType<typeof dependency_3.ArrayValue.prototype.toObject>;
        remove_all_from_array?: ReturnType<typeof dependency_3.ArrayValue.prototype.toObject>;
    };
    serialize(): Uint8Array;
    serialize(w: pb_1.BinaryWriter): void;
    static deserialize(bytes: Uint8Array | pb_1.BinaryReader): DocumentTransformFieldTransform;
    serializeBinary(): Uint8Array;
    static deserializeBinary(bytes: Uint8Array): DocumentTransformFieldTransform;
}
export declare enum DocumentTransformFieldTransformServerValue {
    SERVER_VALUE_UNSPECIFIED = 0,
    REQUEST_TIME = 1
}
export declare class WriteResult extends pb_1.Message {
    #private;
    constructor(data?: any[] | {
        update_time?: dependency_4.Timestamp;
        transform_results?: dependency_3.Value[];
    });
    get update_time(): dependency_4.Timestamp;
    set update_time(value: dependency_4.Timestamp);
    get has_update_time(): boolean;
    get transform_results(): dependency_3.Value[];
    set transform_results(value: dependency_3.Value[]);
    static fromObject(data: {
        update_time?: ReturnType<typeof dependency_4.Timestamp.prototype.toObject>;
        transform_results?: ReturnType<typeof dependency_3.Value.prototype.toObject>[];
    }): WriteResult;
    toObject(): {
        update_time?: ReturnType<typeof dependency_4.Timestamp.prototype.toObject>;
        transform_results?: ReturnType<typeof dependency_3.Value.prototype.toObject>[];
    };
    serialize(): Uint8Array;
    serialize(w: pb_1.BinaryWriter): void;
    static deserialize(bytes: Uint8Array | pb_1.BinaryReader): WriteResult;
    serializeBinary(): Uint8Array;
    static deserializeBinary(bytes: Uint8Array): WriteResult;
}
export declare class DocumentChange extends pb_1.Message {
    #private;
    constructor(data?: any[] | {
        document?: dependency_3.Document;
        target_ids?: number[];
        removed_target_ids?: number[];
    });
    get document(): dependency_3.Document;
    set document(value: dependency_3.Document);
    get has_document(): boolean;
    get target_ids(): number[];
    set target_ids(value: number[]);
    get removed_target_ids(): number[];
    set removed_target_ids(value: number[]);
    static fromObject(data: {
        document?: ReturnType<typeof dependency_3.Document.prototype.toObject>;
        target_ids?: number[];
        removed_target_ids?: number[];
    }): DocumentChange;
    toObject(): {
        document?: ReturnType<typeof dependency_3.Document.prototype.toObject>;
        target_ids?: number[];
        removed_target_ids?: number[];
    };
    serialize(): Uint8Array;
    serialize(w: pb_1.BinaryWriter): void;
    static deserialize(bytes: Uint8Array | pb_1.BinaryReader): DocumentChange;
    serializeBinary(): Uint8Array;
    static deserializeBinary(bytes: Uint8Array): DocumentChange;
}
export declare class DocumentDelete extends pb_1.Message {
    #private;
    constructor(data?: any[] | {
        document?: string;
        removed_target_ids?: number[];
        read_time?: dependency_4.Timestamp;
    });
    get document(): string;
    set document(value: string);
    get removed_target_ids(): number[];
    set removed_target_ids(value: number[]);
    get read_time(): dependency_4.Timestamp;
    set read_time(value: dependency_4.Timestamp);
    get has_read_time(): boolean;
    static fromObject(data: {
        document?: string;
        removed_target_ids?: number[];
        read_time?: ReturnType<typeof dependency_4.Timestamp.prototype.toObject>;
    }): DocumentDelete;
    toObject(): {
        document?: string;
        removed_target_ids?: number[];
        read_time?: ReturnType<typeof dependency_4.Timestamp.prototype.toObject>;
    };
    serialize(): Uint8Array;
    serialize(w: pb_1.BinaryWriter): void;
    static deserialize(bytes: Uint8Array | pb_1.BinaryReader): DocumentDelete;
    serializeBinary(): Uint8Array;
    static deserializeBinary(bytes: Uint8Array): DocumentDelete;
}
export declare class DocumentRemove extends pb_1.Message {
    #private;
    constructor(data?: any[] | {
        document?: string;
        removed_target_ids?: number[];
        read_time?: dependency_4.Timestamp;
    });
    get document(): string;
    set document(value: string);
    get removed_target_ids(): number[];
    set removed_target_ids(value: number[]);
    get read_time(): dependency_4.Timestamp;
    set read_time(value: dependency_4.Timestamp);
    get has_read_time(): boolean;
    static fromObject(data: {
        document?: string;
        removed_target_ids?: number[];
        read_time?: ReturnType<typeof dependency_4.Timestamp.prototype.toObject>;
    }): DocumentRemove;
    toObject(): {
        document?: string;
        removed_target_ids?: number[];
        read_time?: ReturnType<typeof dependency_4.Timestamp.prototype.toObject>;
    };
    serialize(): Uint8Array;
    serialize(w: pb_1.BinaryWriter): void;
    static deserialize(bytes: Uint8Array | pb_1.BinaryReader): DocumentRemove;
    serializeBinary(): Uint8Array;
    static deserializeBinary(bytes: Uint8Array): DocumentRemove;
}
export declare class ExistenceFilter extends pb_1.Message {
    #private;
    constructor(data?: any[] | {
        target_id?: number;
        count?: number;
        unchanged_names?: dependency_1.BloomFilter;
    });
    get target_id(): number;
    set target_id(value: number);
    get count(): number;
    set count(value: number);
    get unchanged_names(): dependency_1.BloomFilter;
    set unchanged_names(value: dependency_1.BloomFilter);
    get has_unchanged_names(): boolean;
    static fromObject(data: {
        target_id?: number;
        count?: number;
        unchanged_names?: ReturnType<typeof dependency_1.BloomFilter.prototype.toObject>;
    }): ExistenceFilter;
    toObject(): {
        target_id?: number;
        count?: number;
        unchanged_names?: ReturnType<typeof dependency_1.BloomFilter.prototype.toObject>;
    };
    serialize(): Uint8Array;
    serialize(w: pb_1.BinaryWriter): void;
    static deserialize(bytes: Uint8Array | pb_1.BinaryReader): ExistenceFilter;
    serializeBinary(): Uint8Array;
    static deserializeBinary(bytes: Uint8Array): ExistenceFilter;
}
//# sourceMappingURL=write.d.ts.map