/**
 * Generated by the protoc-gen-ts.  DO NOT EDIT!
 * compiler version: 3.19.1
 * source: google/firestore/v1beta1/document.proto
 * git: https://github.com/thesayyn/protoc-gen-ts */
import * as dependency_1 from "./../../protobuf/struct";
import * as dependency_2 from "./../../protobuf/timestamp";
import * as dependency_3 from "./../../type/latlng";
import * as pb_1 from "google-protobuf";
export declare class Document extends pb_1.Message {
    #private;
    constructor(data?: any[] | {
        name?: string;
        fields?: Map<string, Value>;
        create_time?: dependency_2.Timestamp;
        update_time?: dependency_2.Timestamp;
    });
    get name(): string;
    set name(value: string);
    get fields(): Map<string, Value>;
    set fields(value: Map<string, Value>);
    get create_time(): dependency_2.Timestamp;
    set create_time(value: dependency_2.Timestamp);
    get has_create_time(): boolean;
    get update_time(): dependency_2.Timestamp;
    set update_time(value: dependency_2.Timestamp);
    get has_update_time(): boolean;
    static fromObject(data: {
        name?: string;
        fields?: {
            [key: string]: ReturnType<typeof Value.prototype.toObject>;
        };
        create_time?: ReturnType<typeof dependency_2.Timestamp.prototype.toObject>;
        update_time?: ReturnType<typeof dependency_2.Timestamp.prototype.toObject>;
    }): Document;
    toObject(): {
        name?: string;
        fields?: {
            [key: string]: ReturnType<typeof Value.prototype.toObject>;
        };
        create_time?: ReturnType<typeof dependency_2.Timestamp.prototype.toObject>;
        update_time?: ReturnType<typeof dependency_2.Timestamp.prototype.toObject>;
    };
    serialize(): Uint8Array;
    serialize(w: pb_1.BinaryWriter): void;
    static deserialize(bytes: Uint8Array | pb_1.BinaryReader): Document;
    serializeBinary(): Uint8Array;
    static deserializeBinary(bytes: Uint8Array): Document;
}
export declare class Value extends pb_1.Message {
    #private;
    constructor(data?: any[] | ({} & (({
        null_value?: dependency_1.NullValue;
        boolean_value?: never;
        integer_value?: never;
        double_value?: never;
        timestamp_value?: never;
        string_value?: never;
        bytes_value?: never;
        reference_value?: never;
        geo_point_value?: never;
        array_value?: never;
        map_value?: never;
    } | {
        null_value?: never;
        boolean_value?: boolean;
        integer_value?: never;
        double_value?: never;
        timestamp_value?: never;
        string_value?: never;
        bytes_value?: never;
        reference_value?: never;
        geo_point_value?: never;
        array_value?: never;
        map_value?: never;
    } | {
        null_value?: never;
        boolean_value?: never;
        integer_value?: number;
        double_value?: never;
        timestamp_value?: never;
        string_value?: never;
        bytes_value?: never;
        reference_value?: never;
        geo_point_value?: never;
        array_value?: never;
        map_value?: never;
    } | {
        null_value?: never;
        boolean_value?: never;
        integer_value?: never;
        double_value?: number;
        timestamp_value?: never;
        string_value?: never;
        bytes_value?: never;
        reference_value?: never;
        geo_point_value?: never;
        array_value?: never;
        map_value?: never;
    } | {
        null_value?: never;
        boolean_value?: never;
        integer_value?: never;
        double_value?: never;
        timestamp_value?: dependency_2.Timestamp;
        string_value?: never;
        bytes_value?: never;
        reference_value?: never;
        geo_point_value?: never;
        array_value?: never;
        map_value?: never;
    } | {
        null_value?: never;
        boolean_value?: never;
        integer_value?: never;
        double_value?: never;
        timestamp_value?: never;
        string_value?: string;
        bytes_value?: never;
        reference_value?: never;
        geo_point_value?: never;
        array_value?: never;
        map_value?: never;
    } | {
        null_value?: never;
        boolean_value?: never;
        integer_value?: never;
        double_value?: never;
        timestamp_value?: never;
        string_value?: never;
        bytes_value?: Uint8Array;
        reference_value?: never;
        geo_point_value?: never;
        array_value?: never;
        map_value?: never;
    } | {
        null_value?: never;
        boolean_value?: never;
        integer_value?: never;
        double_value?: never;
        timestamp_value?: never;
        string_value?: never;
        bytes_value?: never;
        reference_value?: string;
        geo_point_value?: never;
        array_value?: never;
        map_value?: never;
    } | {
        null_value?: never;
        boolean_value?: never;
        integer_value?: never;
        double_value?: never;
        timestamp_value?: never;
        string_value?: never;
        bytes_value?: never;
        reference_value?: never;
        geo_point_value?: dependency_3.LatLng;
        array_value?: never;
        map_value?: never;
    } | {
        null_value?: never;
        boolean_value?: never;
        integer_value?: never;
        double_value?: never;
        timestamp_value?: never;
        string_value?: never;
        bytes_value?: never;
        reference_value?: never;
        geo_point_value?: never;
        array_value?: ArrayValue;
        map_value?: never;
    } | {
        null_value?: never;
        boolean_value?: never;
        integer_value?: never;
        double_value?: never;
        timestamp_value?: never;
        string_value?: never;
        bytes_value?: never;
        reference_value?: never;
        geo_point_value?: never;
        array_value?: never;
        map_value?: MapValue;
    }))));
    get null_value(): dependency_1.NullValue;
    set null_value(value: dependency_1.NullValue);
    get has_null_value(): boolean;
    get boolean_value(): boolean;
    set boolean_value(value: boolean);
    get has_boolean_value(): boolean;
    get integer_value(): number;
    set integer_value(value: number);
    get has_integer_value(): boolean;
    get double_value(): number;
    set double_value(value: number);
    get has_double_value(): boolean;
    get timestamp_value(): dependency_2.Timestamp;
    set timestamp_value(value: dependency_2.Timestamp);
    get has_timestamp_value(): boolean;
    get string_value(): string;
    set string_value(value: string);
    get has_string_value(): boolean;
    get bytes_value(): Uint8Array;
    set bytes_value(value: Uint8Array);
    get has_bytes_value(): boolean;
    get reference_value(): string;
    set reference_value(value: string);
    get has_reference_value(): boolean;
    get geo_point_value(): dependency_3.LatLng;
    set geo_point_value(value: dependency_3.LatLng);
    get has_geo_point_value(): boolean;
    get array_value(): ArrayValue;
    set array_value(value: ArrayValue);
    get has_array_value(): boolean;
    get map_value(): MapValue;
    set map_value(value: MapValue);
    get has_map_value(): boolean;
    get value_type(): "none" | "double_value" | "string_value" | "null_value" | "boolean_value" | "integer_value" | "timestamp_value" | "bytes_value" | "reference_value" | "geo_point_value" | "array_value" | "map_value";
    static fromObject(data: {
        null_value?: dependency_1.NullValue;
        boolean_value?: boolean;
        integer_value?: number;
        double_value?: number;
        timestamp_value?: ReturnType<typeof dependency_2.Timestamp.prototype.toObject>;
        string_value?: string;
        bytes_value?: Uint8Array;
        reference_value?: string;
        geo_point_value?: ReturnType<typeof dependency_3.LatLng.prototype.toObject>;
        array_value?: ReturnType<typeof ArrayValue.prototype.toObject>;
        map_value?: ReturnType<typeof MapValue.prototype.toObject>;
    }): Value;
    toObject(): {
        null_value?: dependency_1.NullValue;
        boolean_value?: boolean;
        integer_value?: number;
        double_value?: number;
        timestamp_value?: ReturnType<typeof dependency_2.Timestamp.prototype.toObject>;
        string_value?: string;
        bytes_value?: Uint8Array;
        reference_value?: string;
        geo_point_value?: ReturnType<typeof dependency_3.LatLng.prototype.toObject>;
        array_value?: ReturnType<typeof ArrayValue.prototype.toObject>;
        map_value?: ReturnType<typeof MapValue.prototype.toObject>;
    };
    serialize(): Uint8Array;
    serialize(w: pb_1.BinaryWriter): void;
    static deserialize(bytes: Uint8Array | pb_1.BinaryReader): Value;
    serializeBinary(): Uint8Array;
    static deserializeBinary(bytes: Uint8Array): Value;
}
export declare class ArrayValue extends pb_1.Message {
    #private;
    constructor(data?: any[] | {
        values?: Value[];
    });
    get values(): Value[];
    set values(value: Value[]);
    static fromObject(data: {
        values?: ReturnType<typeof Value.prototype.toObject>[];
    }): ArrayValue;
    toObject(): {
        values?: ReturnType<typeof Value.prototype.toObject>[];
    };
    serialize(): Uint8Array;
    serialize(w: pb_1.BinaryWriter): void;
    static deserialize(bytes: Uint8Array | pb_1.BinaryReader): ArrayValue;
    serializeBinary(): Uint8Array;
    static deserializeBinary(bytes: Uint8Array): ArrayValue;
}
export declare class MapValue extends pb_1.Message {
    #private;
    constructor(data?: any[] | {
        fields?: Map<string, Value>;
    });
    get fields(): Map<string, Value>;
    set fields(value: Map<string, Value>);
    static fromObject(data: {
        fields?: {
            [key: string]: ReturnType<typeof Value.prototype.toObject>;
        };
    }): MapValue;
    toObject(): {
        fields?: {
            [key: string]: ReturnType<typeof Value.prototype.toObject>;
        };
    };
    serialize(): Uint8Array;
    serialize(w: pb_1.BinaryWriter): void;
    static deserialize(bytes: Uint8Array | pb_1.BinaryReader): MapValue;
    serializeBinary(): Uint8Array;
    static deserializeBinary(bytes: Uint8Array): MapValue;
}
//# sourceMappingURL=document.d.ts.map