/**
 * Generated by the protoc-gen-ts.  DO NOT EDIT!
 * compiler version: 3.19.1
 * source: google/firestore/admin/v1/firestore_admin.proto
 * git: https://github.com/thesayyn/protoc-gen-ts */
import * as dependency_1 from "./../../../api/annotations";
import * as dependency_2 from "./../../../api/client";
import * as dependency_3 from "./../../../api/field_behavior";
import * as dependency_4 from "./../../../api/resource";
import * as dependency_5 from "./backup";
import * as dependency_6 from "./database";
import * as dependency_7 from "./field";
import * as dependency_8 from "./index";
import * as dependency_9 from "./operation";
import * as dependency_10 from "./schedule";
import * as dependency_11 from "./../../../longrunning/operations";
import * as dependency_12 from "./../../../protobuf/empty";
import * as dependency_13 from "./../../../protobuf/field_mask";
import * as dependency_14 from "./../../../protobuf/timestamp";
import * as pb_1 from "google-protobuf";
import * as grpc_1 from "@grpc/grpc-js";
export class ListDatabasesRequest extends pb_1.Message {
    #one_of_decls: number[][] = [];
    constructor(data?: any[] | {
        parent?: string;
        show_deleted?: boolean;
    }) {
        super();
        pb_1.Message.initialize(this, Array.isArray(data) ? data : [], 0, -1, [], this.#one_of_decls);
        if (!Array.isArray(data) && typeof data == "object") {
            if ("parent" in data && data.parent != undefined) {
                this.parent = data.parent;
            }
            if ("show_deleted" in data && data.show_deleted != undefined) {
                this.show_deleted = data.show_deleted;
            }
        }
    }
    get parent() {
        return pb_1.Message.getFieldWithDefault(this, 1, "") as string;
    }
    set parent(value: string) {
        pb_1.Message.setField(this, 1, value);
    }
    get show_deleted() {
        return pb_1.Message.getFieldWithDefault(this, 4, false) as boolean;
    }
    set show_deleted(value: boolean) {
        pb_1.Message.setField(this, 4, value);
    }
    static fromObject(data: {
        parent?: string;
        show_deleted?: boolean;
    }): ListDatabasesRequest {
        const message = new ListDatabasesRequest({});
        if (data.parent != null) {
            message.parent = data.parent;
        }
        if (data.show_deleted != null) {
            message.show_deleted = data.show_deleted;
        }
        return message;
    }
    toObject() {
        const data: {
            parent?: string;
            show_deleted?: boolean;
        } = {};
        if (this.parent != null) {
            data.parent = this.parent;
        }
        if (this.show_deleted != null) {
            data.show_deleted = this.show_deleted;
        }
        return data;
    }
    serialize(): Uint8Array;
    serialize(w: pb_1.BinaryWriter): void;
    serialize(w?: pb_1.BinaryWriter): Uint8Array | void {
        const writer = w || new pb_1.BinaryWriter();
        if (this.parent.length)
            writer.writeString(1, this.parent);
        if (this.show_deleted != false)
            writer.writeBool(4, this.show_deleted);
        if (!w)
            return writer.getResultBuffer();
    }
    static deserialize(bytes: Uint8Array | pb_1.BinaryReader): ListDatabasesRequest {
        const reader = bytes instanceof pb_1.BinaryReader ? bytes : new pb_1.BinaryReader(bytes), message = new ListDatabasesRequest();
        while (reader.nextField()) {
            if (reader.isEndGroup())
                break;
            switch (reader.getFieldNumber()) {
                case 1:
                    message.parent = reader.readString();
                    break;
                case 4:
                    message.show_deleted = reader.readBool();
                    break;
                default: reader.skipField();
            }
        }
        return message;
    }
    serializeBinary(): Uint8Array {
        return this.serialize();
    }
    static override deserializeBinary(bytes: Uint8Array): ListDatabasesRequest {
        return ListDatabasesRequest.deserialize(bytes);
    }
}
export class CreateDatabaseRequest extends pb_1.Message {
    #one_of_decls: number[][] = [];
    constructor(data?: any[] | {
        parent?: string;
        database?: dependency_6.Database;
        database_id?: string;
    }) {
        super();
        pb_1.Message.initialize(this, Array.isArray(data) ? data : [], 0, -1, [], this.#one_of_decls);
        if (!Array.isArray(data) && typeof data == "object") {
            if ("parent" in data && data.parent != undefined) {
                this.parent = data.parent;
            }
            if ("database" in data && data.database != undefined) {
                this.database = data.database;
            }
            if ("database_id" in data && data.database_id != undefined) {
                this.database_id = data.database_id;
            }
        }
    }
    get parent() {
        return pb_1.Message.getFieldWithDefault(this, 1, "") as string;
    }
    set parent(value: string) {
        pb_1.Message.setField(this, 1, value);
    }
    get database() {
        return pb_1.Message.getWrapperField(this, dependency_6.Database, 2) as dependency_6.Database;
    }
    set database(value: dependency_6.Database) {
        pb_1.Message.setWrapperField(this, 2, value);
    }
    get has_database() {
        return pb_1.Message.getField(this, 2) != null;
    }
    get database_id() {
        return pb_1.Message.getFieldWithDefault(this, 3, "") as string;
    }
    set database_id(value: string) {
        pb_1.Message.setField(this, 3, value);
    }
    static fromObject(data: {
        parent?: string;
        database?: ReturnType<typeof dependency_6.Database.prototype.toObject>;
        database_id?: string;
    }): CreateDatabaseRequest {
        const message = new CreateDatabaseRequest({});
        if (data.parent != null) {
            message.parent = data.parent;
        }
        if (data.database != null) {
            message.database = dependency_6.Database.fromObject(data.database);
        }
        if (data.database_id != null) {
            message.database_id = data.database_id;
        }
        return message;
    }
    toObject() {
        const data: {
            parent?: string;
            database?: ReturnType<typeof dependency_6.Database.prototype.toObject>;
            database_id?: string;
        } = {};
        if (this.parent != null) {
            data.parent = this.parent;
        }
        if (this.database != null) {
            data.database = this.database.toObject();
        }
        if (this.database_id != null) {
            data.database_id = this.database_id;
        }
        return data;
    }
    serialize(): Uint8Array;
    serialize(w: pb_1.BinaryWriter): void;
    serialize(w?: pb_1.BinaryWriter): Uint8Array | void {
        const writer = w || new pb_1.BinaryWriter();
        if (this.parent.length)
            writer.writeString(1, this.parent);
        if (this.has_database)
            writer.writeMessage(2, this.database, () => this.database.serialize(writer));
        if (this.database_id.length)
            writer.writeString(3, this.database_id);
        if (!w)
            return writer.getResultBuffer();
    }
    static deserialize(bytes: Uint8Array | pb_1.BinaryReader): CreateDatabaseRequest {
        const reader = bytes instanceof pb_1.BinaryReader ? bytes : new pb_1.BinaryReader(bytes), message = new CreateDatabaseRequest();
        while (reader.nextField()) {
            if (reader.isEndGroup())
                break;
            switch (reader.getFieldNumber()) {
                case 1:
                    message.parent = reader.readString();
                    break;
                case 2:
                    reader.readMessage(message.database, () => message.database = dependency_6.Database.deserialize(reader));
                    break;
                case 3:
                    message.database_id = reader.readString();
                    break;
                default: reader.skipField();
            }
        }
        return message;
    }
    serializeBinary(): Uint8Array {
        return this.serialize();
    }
    static override deserializeBinary(bytes: Uint8Array): CreateDatabaseRequest {
        return CreateDatabaseRequest.deserialize(bytes);
    }
}
export class CreateDatabaseMetadata extends pb_1.Message {
    #one_of_decls: number[][] = [];
    constructor(data?: any[] | {}) {
        super();
        pb_1.Message.initialize(this, Array.isArray(data) ? data : [], 0, -1, [], this.#one_of_decls);
        if (!Array.isArray(data) && typeof data == "object") { }
    }
    static fromObject(data: {}): CreateDatabaseMetadata {
        const message = new CreateDatabaseMetadata({});
        return message;
    }
    toObject() {
        const data: {} = {};
        return data;
    }
    serialize(): Uint8Array;
    serialize(w: pb_1.BinaryWriter): void;
    serialize(w?: pb_1.BinaryWriter): Uint8Array | void {
        const writer = w || new pb_1.BinaryWriter();
        if (!w)
            return writer.getResultBuffer();
    }
    static deserialize(bytes: Uint8Array | pb_1.BinaryReader): CreateDatabaseMetadata {
        const reader = bytes instanceof pb_1.BinaryReader ? bytes : new pb_1.BinaryReader(bytes), message = new CreateDatabaseMetadata();
        while (reader.nextField()) {
            if (reader.isEndGroup())
                break;
            switch (reader.getFieldNumber()) {
                default: reader.skipField();
            }
        }
        return message;
    }
    serializeBinary(): Uint8Array {
        return this.serialize();
    }
    static override deserializeBinary(bytes: Uint8Array): CreateDatabaseMetadata {
        return CreateDatabaseMetadata.deserialize(bytes);
    }
}
export class ListDatabasesResponse extends pb_1.Message {
    #one_of_decls: number[][] = [];
    constructor(data?: any[] | {
        databases?: dependency_6.Database[];
        unreachable?: string[];
    }) {
        super();
        pb_1.Message.initialize(this, Array.isArray(data) ? data : [], 0, -1, [1, 3], this.#one_of_decls);
        if (!Array.isArray(data) && typeof data == "object") {
            if ("databases" in data && data.databases != undefined) {
                this.databases = data.databases;
            }
            if ("unreachable" in data && data.unreachable != undefined) {
                this.unreachable = data.unreachable;
            }
        }
    }
    get databases() {
        return pb_1.Message.getRepeatedWrapperField(this, dependency_6.Database, 1) as dependency_6.Database[];
    }
    set databases(value: dependency_6.Database[]) {
        pb_1.Message.setRepeatedWrapperField(this, 1, value);
    }
    get unreachable() {
        return pb_1.Message.getFieldWithDefault(this, 3, []) as string[];
    }
    set unreachable(value: string[]) {
        pb_1.Message.setField(this, 3, value);
    }
    static fromObject(data: {
        databases?: ReturnType<typeof dependency_6.Database.prototype.toObject>[];
        unreachable?: string[];
    }): ListDatabasesResponse {
        const message = new ListDatabasesResponse({});
        if (data.databases != null) {
            message.databases = data.databases.map(item => dependency_6.Database.fromObject(item));
        }
        if (data.unreachable != null) {
            message.unreachable = data.unreachable;
        }
        return message;
    }
    toObject() {
        const data: {
            databases?: ReturnType<typeof dependency_6.Database.prototype.toObject>[];
            unreachable?: string[];
        } = {};
        if (this.databases != null) {
            data.databases = this.databases.map((item: dependency_6.Database) => item.toObject());
        }
        if (this.unreachable != null) {
            data.unreachable = this.unreachable;
        }
        return data;
    }
    serialize(): Uint8Array;
    serialize(w: pb_1.BinaryWriter): void;
    serialize(w?: pb_1.BinaryWriter): Uint8Array | void {
        const writer = w || new pb_1.BinaryWriter();
        if (this.databases.length)
            writer.writeRepeatedMessage(1, this.databases, (item: dependency_6.Database) => item.serialize(writer));
        if (this.unreachable.length)
            writer.writeRepeatedString(3, this.unreachable);
        if (!w)
            return writer.getResultBuffer();
    }
    static deserialize(bytes: Uint8Array | pb_1.BinaryReader): ListDatabasesResponse {
        const reader = bytes instanceof pb_1.BinaryReader ? bytes : new pb_1.BinaryReader(bytes), message = new ListDatabasesResponse();
        while (reader.nextField()) {
            if (reader.isEndGroup())
                break;
            switch (reader.getFieldNumber()) {
                case 1:
                    reader.readMessage(message.databases, () => pb_1.Message.addToRepeatedWrapperField(message, 1, dependency_6.Database.deserialize(reader), dependency_6.Database));
                    break;
                case 3:
                    pb_1.Message.addToRepeatedField(message, 3, reader.readString());
                    break;
                default: reader.skipField();
            }
        }
        return message;
    }
    serializeBinary(): Uint8Array {
        return this.serialize();
    }
    static override deserializeBinary(bytes: Uint8Array): ListDatabasesResponse {
        return ListDatabasesResponse.deserialize(bytes);
    }
}
export class GetDatabaseRequest extends pb_1.Message {
    #one_of_decls: number[][] = [];
    constructor(data?: any[] | {
        name?: string;
    }) {
        super();
        pb_1.Message.initialize(this, Array.isArray(data) ? data : [], 0, -1, [], this.#one_of_decls);
        if (!Array.isArray(data) && typeof data == "object") {
            if ("name" in data && data.name != undefined) {
                this.name = data.name;
            }
        }
    }
    get name() {
        return pb_1.Message.getFieldWithDefault(this, 1, "") as string;
    }
    set name(value: string) {
        pb_1.Message.setField(this, 1, value);
    }
    static fromObject(data: {
        name?: string;
    }): GetDatabaseRequest {
        const message = new GetDatabaseRequest({});
        if (data.name != null) {
            message.name = data.name;
        }
        return message;
    }
    toObject() {
        const data: {
            name?: string;
        } = {};
        if (this.name != null) {
            data.name = this.name;
        }
        return data;
    }
    serialize(): Uint8Array;
    serialize(w: pb_1.BinaryWriter): void;
    serialize(w?: pb_1.BinaryWriter): Uint8Array | void {
        const writer = w || new pb_1.BinaryWriter();
        if (this.name.length)
            writer.writeString(1, this.name);
        if (!w)
            return writer.getResultBuffer();
    }
    static deserialize(bytes: Uint8Array | pb_1.BinaryReader): GetDatabaseRequest {
        const reader = bytes instanceof pb_1.BinaryReader ? bytes : new pb_1.BinaryReader(bytes), message = new GetDatabaseRequest();
        while (reader.nextField()) {
            if (reader.isEndGroup())
                break;
            switch (reader.getFieldNumber()) {
                case 1:
                    message.name = reader.readString();
                    break;
                default: reader.skipField();
            }
        }
        return message;
    }
    serializeBinary(): Uint8Array {
        return this.serialize();
    }
    static override deserializeBinary(bytes: Uint8Array): GetDatabaseRequest {
        return GetDatabaseRequest.deserialize(bytes);
    }
}
export class UpdateDatabaseRequest extends pb_1.Message {
    #one_of_decls: number[][] = [];
    constructor(data?: any[] | {
        database?: dependency_6.Database;
        update_mask?: dependency_13.FieldMask;
    }) {
        super();
        pb_1.Message.initialize(this, Array.isArray(data) ? data : [], 0, -1, [], this.#one_of_decls);
        if (!Array.isArray(data) && typeof data == "object") {
            if ("database" in data && data.database != undefined) {
                this.database = data.database;
            }
            if ("update_mask" in data && data.update_mask != undefined) {
                this.update_mask = data.update_mask;
            }
        }
    }
    get database() {
        return pb_1.Message.getWrapperField(this, dependency_6.Database, 1) as dependency_6.Database;
    }
    set database(value: dependency_6.Database) {
        pb_1.Message.setWrapperField(this, 1, value);
    }
    get has_database() {
        return pb_1.Message.getField(this, 1) != null;
    }
    get update_mask() {
        return pb_1.Message.getWrapperField(this, dependency_13.FieldMask, 2) as dependency_13.FieldMask;
    }
    set update_mask(value: dependency_13.FieldMask) {
        pb_1.Message.setWrapperField(this, 2, value);
    }
    get has_update_mask() {
        return pb_1.Message.getField(this, 2) != null;
    }
    static fromObject(data: {
        database?: ReturnType<typeof dependency_6.Database.prototype.toObject>;
        update_mask?: ReturnType<typeof dependency_13.FieldMask.prototype.toObject>;
    }): UpdateDatabaseRequest {
        const message = new UpdateDatabaseRequest({});
        if (data.database != null) {
            message.database = dependency_6.Database.fromObject(data.database);
        }
        if (data.update_mask != null) {
            message.update_mask = dependency_13.FieldMask.fromObject(data.update_mask);
        }
        return message;
    }
    toObject() {
        const data: {
            database?: ReturnType<typeof dependency_6.Database.prototype.toObject>;
            update_mask?: ReturnType<typeof dependency_13.FieldMask.prototype.toObject>;
        } = {};
        if (this.database != null) {
            data.database = this.database.toObject();
        }
        if (this.update_mask != null) {
            data.update_mask = this.update_mask.toObject();
        }
        return data;
    }
    serialize(): Uint8Array;
    serialize(w: pb_1.BinaryWriter): void;
    serialize(w?: pb_1.BinaryWriter): Uint8Array | void {
        const writer = w || new pb_1.BinaryWriter();
        if (this.has_database)
            writer.writeMessage(1, this.database, () => this.database.serialize(writer));
        if (this.has_update_mask)
            writer.writeMessage(2, this.update_mask, () => this.update_mask.serialize(writer));
        if (!w)
            return writer.getResultBuffer();
    }
    static deserialize(bytes: Uint8Array | pb_1.BinaryReader): UpdateDatabaseRequest {
        const reader = bytes instanceof pb_1.BinaryReader ? bytes : new pb_1.BinaryReader(bytes), message = new UpdateDatabaseRequest();
        while (reader.nextField()) {
            if (reader.isEndGroup())
                break;
            switch (reader.getFieldNumber()) {
                case 1:
                    reader.readMessage(message.database, () => message.database = dependency_6.Database.deserialize(reader));
                    break;
                case 2:
                    reader.readMessage(message.update_mask, () => message.update_mask = dependency_13.FieldMask.deserialize(reader));
                    break;
                default: reader.skipField();
            }
        }
        return message;
    }
    serializeBinary(): Uint8Array {
        return this.serialize();
    }
    static override deserializeBinary(bytes: Uint8Array): UpdateDatabaseRequest {
        return UpdateDatabaseRequest.deserialize(bytes);
    }
}
export class UpdateDatabaseMetadata extends pb_1.Message {
    #one_of_decls: number[][] = [];
    constructor(data?: any[] | {}) {
        super();
        pb_1.Message.initialize(this, Array.isArray(data) ? data : [], 0, -1, [], this.#one_of_decls);
        if (!Array.isArray(data) && typeof data == "object") { }
    }
    static fromObject(data: {}): UpdateDatabaseMetadata {
        const message = new UpdateDatabaseMetadata({});
        return message;
    }
    toObject() {
        const data: {} = {};
        return data;
    }
    serialize(): Uint8Array;
    serialize(w: pb_1.BinaryWriter): void;
    serialize(w?: pb_1.BinaryWriter): Uint8Array | void {
        const writer = w || new pb_1.BinaryWriter();
        if (!w)
            return writer.getResultBuffer();
    }
    static deserialize(bytes: Uint8Array | pb_1.BinaryReader): UpdateDatabaseMetadata {
        const reader = bytes instanceof pb_1.BinaryReader ? bytes : new pb_1.BinaryReader(bytes), message = new UpdateDatabaseMetadata();
        while (reader.nextField()) {
            if (reader.isEndGroup())
                break;
            switch (reader.getFieldNumber()) {
                default: reader.skipField();
            }
        }
        return message;
    }
    serializeBinary(): Uint8Array {
        return this.serialize();
    }
    static override deserializeBinary(bytes: Uint8Array): UpdateDatabaseMetadata {
        return UpdateDatabaseMetadata.deserialize(bytes);
    }
}
export class DeleteDatabaseRequest extends pb_1.Message {
    #one_of_decls: number[][] = [];
    constructor(data?: any[] | {
        name?: string;
        etag?: string;
    }) {
        super();
        pb_1.Message.initialize(this, Array.isArray(data) ? data : [], 0, -1, [], this.#one_of_decls);
        if (!Array.isArray(data) && typeof data == "object") {
            if ("name" in data && data.name != undefined) {
                this.name = data.name;
            }
            if ("etag" in data && data.etag != undefined) {
                this.etag = data.etag;
            }
        }
    }
    get name() {
        return pb_1.Message.getFieldWithDefault(this, 1, "") as string;
    }
    set name(value: string) {
        pb_1.Message.setField(this, 1, value);
    }
    get etag() {
        return pb_1.Message.getFieldWithDefault(this, 3, "") as string;
    }
    set etag(value: string) {
        pb_1.Message.setField(this, 3, value);
    }
    static fromObject(data: {
        name?: string;
        etag?: string;
    }): DeleteDatabaseRequest {
        const message = new DeleteDatabaseRequest({});
        if (data.name != null) {
            message.name = data.name;
        }
        if (data.etag != null) {
            message.etag = data.etag;
        }
        return message;
    }
    toObject() {
        const data: {
            name?: string;
            etag?: string;
        } = {};
        if (this.name != null) {
            data.name = this.name;
        }
        if (this.etag != null) {
            data.etag = this.etag;
        }
        return data;
    }
    serialize(): Uint8Array;
    serialize(w: pb_1.BinaryWriter): void;
    serialize(w?: pb_1.BinaryWriter): Uint8Array | void {
        const writer = w || new pb_1.BinaryWriter();
        if (this.name.length)
            writer.writeString(1, this.name);
        if (this.etag.length)
            writer.writeString(3, this.etag);
        if (!w)
            return writer.getResultBuffer();
    }
    static deserialize(bytes: Uint8Array | pb_1.BinaryReader): DeleteDatabaseRequest {
        const reader = bytes instanceof pb_1.BinaryReader ? bytes : new pb_1.BinaryReader(bytes), message = new DeleteDatabaseRequest();
        while (reader.nextField()) {
            if (reader.isEndGroup())
                break;
            switch (reader.getFieldNumber()) {
                case 1:
                    message.name = reader.readString();
                    break;
                case 3:
                    message.etag = reader.readString();
                    break;
                default: reader.skipField();
            }
        }
        return message;
    }
    serializeBinary(): Uint8Array {
        return this.serialize();
    }
    static override deserializeBinary(bytes: Uint8Array): DeleteDatabaseRequest {
        return DeleteDatabaseRequest.deserialize(bytes);
    }
}
export class DeleteDatabaseMetadata extends pb_1.Message {
    #one_of_decls: number[][] = [];
    constructor(data?: any[] | {}) {
        super();
        pb_1.Message.initialize(this, Array.isArray(data) ? data : [], 0, -1, [], this.#one_of_decls);
        if (!Array.isArray(data) && typeof data == "object") { }
    }
    static fromObject(data: {}): DeleteDatabaseMetadata {
        const message = new DeleteDatabaseMetadata({});
        return message;
    }
    toObject() {
        const data: {} = {};
        return data;
    }
    serialize(): Uint8Array;
    serialize(w: pb_1.BinaryWriter): void;
    serialize(w?: pb_1.BinaryWriter): Uint8Array | void {
        const writer = w || new pb_1.BinaryWriter();
        if (!w)
            return writer.getResultBuffer();
    }
    static deserialize(bytes: Uint8Array | pb_1.BinaryReader): DeleteDatabaseMetadata {
        const reader = bytes instanceof pb_1.BinaryReader ? bytes : new pb_1.BinaryReader(bytes), message = new DeleteDatabaseMetadata();
        while (reader.nextField()) {
            if (reader.isEndGroup())
                break;
            switch (reader.getFieldNumber()) {
                default: reader.skipField();
            }
        }
        return message;
    }
    serializeBinary(): Uint8Array {
        return this.serialize();
    }
    static override deserializeBinary(bytes: Uint8Array): DeleteDatabaseMetadata {
        return DeleteDatabaseMetadata.deserialize(bytes);
    }
}
export class CreateBackupScheduleRequest extends pb_1.Message {
    #one_of_decls: number[][] = [];
    constructor(data?: any[] | {
        parent?: string;
        backup_schedule?: dependency_10.BackupSchedule;
    }) {
        super();
        pb_1.Message.initialize(this, Array.isArray(data) ? data : [], 0, -1, [], this.#one_of_decls);
        if (!Array.isArray(data) && typeof data == "object") {
            if ("parent" in data && data.parent != undefined) {
                this.parent = data.parent;
            }
            if ("backup_schedule" in data && data.backup_schedule != undefined) {
                this.backup_schedule = data.backup_schedule;
            }
        }
    }
    get parent() {
        return pb_1.Message.getFieldWithDefault(this, 1, "") as string;
    }
    set parent(value: string) {
        pb_1.Message.setField(this, 1, value);
    }
    get backup_schedule() {
        return pb_1.Message.getWrapperField(this, dependency_10.BackupSchedule, 2) as dependency_10.BackupSchedule;
    }
    set backup_schedule(value: dependency_10.BackupSchedule) {
        pb_1.Message.setWrapperField(this, 2, value);
    }
    get has_backup_schedule() {
        return pb_1.Message.getField(this, 2) != null;
    }
    static fromObject(data: {
        parent?: string;
        backup_schedule?: ReturnType<typeof dependency_10.BackupSchedule.prototype.toObject>;
    }): CreateBackupScheduleRequest {
        const message = new CreateBackupScheduleRequest({});
        if (data.parent != null) {
            message.parent = data.parent;
        }
        if (data.backup_schedule != null) {
            message.backup_schedule = dependency_10.BackupSchedule.fromObject(data.backup_schedule);
        }
        return message;
    }
    toObject() {
        const data: {
            parent?: string;
            backup_schedule?: ReturnType<typeof dependency_10.BackupSchedule.prototype.toObject>;
        } = {};
        if (this.parent != null) {
            data.parent = this.parent;
        }
        if (this.backup_schedule != null) {
            data.backup_schedule = this.backup_schedule.toObject();
        }
        return data;
    }
    serialize(): Uint8Array;
    serialize(w: pb_1.BinaryWriter): void;
    serialize(w?: pb_1.BinaryWriter): Uint8Array | void {
        const writer = w || new pb_1.BinaryWriter();
        if (this.parent.length)
            writer.writeString(1, this.parent);
        if (this.has_backup_schedule)
            writer.writeMessage(2, this.backup_schedule, () => this.backup_schedule.serialize(writer));
        if (!w)
            return writer.getResultBuffer();
    }
    static deserialize(bytes: Uint8Array | pb_1.BinaryReader): CreateBackupScheduleRequest {
        const reader = bytes instanceof pb_1.BinaryReader ? bytes : new pb_1.BinaryReader(bytes), message = new CreateBackupScheduleRequest();
        while (reader.nextField()) {
            if (reader.isEndGroup())
                break;
            switch (reader.getFieldNumber()) {
                case 1:
                    message.parent = reader.readString();
                    break;
                case 2:
                    reader.readMessage(message.backup_schedule, () => message.backup_schedule = dependency_10.BackupSchedule.deserialize(reader));
                    break;
                default: reader.skipField();
            }
        }
        return message;
    }
    serializeBinary(): Uint8Array {
        return this.serialize();
    }
    static override deserializeBinary(bytes: Uint8Array): CreateBackupScheduleRequest {
        return CreateBackupScheduleRequest.deserialize(bytes);
    }
}
export class GetBackupScheduleRequest extends pb_1.Message {
    #one_of_decls: number[][] = [];
    constructor(data?: any[] | {
        name?: string;
    }) {
        super();
        pb_1.Message.initialize(this, Array.isArray(data) ? data : [], 0, -1, [], this.#one_of_decls);
        if (!Array.isArray(data) && typeof data == "object") {
            if ("name" in data && data.name != undefined) {
                this.name = data.name;
            }
        }
    }
    get name() {
        return pb_1.Message.getFieldWithDefault(this, 1, "") as string;
    }
    set name(value: string) {
        pb_1.Message.setField(this, 1, value);
    }
    static fromObject(data: {
        name?: string;
    }): GetBackupScheduleRequest {
        const message = new GetBackupScheduleRequest({});
        if (data.name != null) {
            message.name = data.name;
        }
        return message;
    }
    toObject() {
        const data: {
            name?: string;
        } = {};
        if (this.name != null) {
            data.name = this.name;
        }
        return data;
    }
    serialize(): Uint8Array;
    serialize(w: pb_1.BinaryWriter): void;
    serialize(w?: pb_1.BinaryWriter): Uint8Array | void {
        const writer = w || new pb_1.BinaryWriter();
        if (this.name.length)
            writer.writeString(1, this.name);
        if (!w)
            return writer.getResultBuffer();
    }
    static deserialize(bytes: Uint8Array | pb_1.BinaryReader): GetBackupScheduleRequest {
        const reader = bytes instanceof pb_1.BinaryReader ? bytes : new pb_1.BinaryReader(bytes), message = new GetBackupScheduleRequest();
        while (reader.nextField()) {
            if (reader.isEndGroup())
                break;
            switch (reader.getFieldNumber()) {
                case 1:
                    message.name = reader.readString();
                    break;
                default: reader.skipField();
            }
        }
        return message;
    }
    serializeBinary(): Uint8Array {
        return this.serialize();
    }
    static override deserializeBinary(bytes: Uint8Array): GetBackupScheduleRequest {
        return GetBackupScheduleRequest.deserialize(bytes);
    }
}
export class UpdateBackupScheduleRequest extends pb_1.Message {
    #one_of_decls: number[][] = [];
    constructor(data?: any[] | {
        backup_schedule?: dependency_10.BackupSchedule;
        update_mask?: dependency_13.FieldMask;
    }) {
        super();
        pb_1.Message.initialize(this, Array.isArray(data) ? data : [], 0, -1, [], this.#one_of_decls);
        if (!Array.isArray(data) && typeof data == "object") {
            if ("backup_schedule" in data && data.backup_schedule != undefined) {
                this.backup_schedule = data.backup_schedule;
            }
            if ("update_mask" in data && data.update_mask != undefined) {
                this.update_mask = data.update_mask;
            }
        }
    }
    get backup_schedule() {
        return pb_1.Message.getWrapperField(this, dependency_10.BackupSchedule, 1) as dependency_10.BackupSchedule;
    }
    set backup_schedule(value: dependency_10.BackupSchedule) {
        pb_1.Message.setWrapperField(this, 1, value);
    }
    get has_backup_schedule() {
        return pb_1.Message.getField(this, 1) != null;
    }
    get update_mask() {
        return pb_1.Message.getWrapperField(this, dependency_13.FieldMask, 2) as dependency_13.FieldMask;
    }
    set update_mask(value: dependency_13.FieldMask) {
        pb_1.Message.setWrapperField(this, 2, value);
    }
    get has_update_mask() {
        return pb_1.Message.getField(this, 2) != null;
    }
    static fromObject(data: {
        backup_schedule?: ReturnType<typeof dependency_10.BackupSchedule.prototype.toObject>;
        update_mask?: ReturnType<typeof dependency_13.FieldMask.prototype.toObject>;
    }): UpdateBackupScheduleRequest {
        const message = new UpdateBackupScheduleRequest({});
        if (data.backup_schedule != null) {
            message.backup_schedule = dependency_10.BackupSchedule.fromObject(data.backup_schedule);
        }
        if (data.update_mask != null) {
            message.update_mask = dependency_13.FieldMask.fromObject(data.update_mask);
        }
        return message;
    }
    toObject() {
        const data: {
            backup_schedule?: ReturnType<typeof dependency_10.BackupSchedule.prototype.toObject>;
            update_mask?: ReturnType<typeof dependency_13.FieldMask.prototype.toObject>;
        } = {};
        if (this.backup_schedule != null) {
            data.backup_schedule = this.backup_schedule.toObject();
        }
        if (this.update_mask != null) {
            data.update_mask = this.update_mask.toObject();
        }
        return data;
    }
    serialize(): Uint8Array;
    serialize(w: pb_1.BinaryWriter): void;
    serialize(w?: pb_1.BinaryWriter): Uint8Array | void {
        const writer = w || new pb_1.BinaryWriter();
        if (this.has_backup_schedule)
            writer.writeMessage(1, this.backup_schedule, () => this.backup_schedule.serialize(writer));
        if (this.has_update_mask)
            writer.writeMessage(2, this.update_mask, () => this.update_mask.serialize(writer));
        if (!w)
            return writer.getResultBuffer();
    }
    static deserialize(bytes: Uint8Array | pb_1.BinaryReader): UpdateBackupScheduleRequest {
        const reader = bytes instanceof pb_1.BinaryReader ? bytes : new pb_1.BinaryReader(bytes), message = new UpdateBackupScheduleRequest();
        while (reader.nextField()) {
            if (reader.isEndGroup())
                break;
            switch (reader.getFieldNumber()) {
                case 1:
                    reader.readMessage(message.backup_schedule, () => message.backup_schedule = dependency_10.BackupSchedule.deserialize(reader));
                    break;
                case 2:
                    reader.readMessage(message.update_mask, () => message.update_mask = dependency_13.FieldMask.deserialize(reader));
                    break;
                default: reader.skipField();
            }
        }
        return message;
    }
    serializeBinary(): Uint8Array {
        return this.serialize();
    }
    static override deserializeBinary(bytes: Uint8Array): UpdateBackupScheduleRequest {
        return UpdateBackupScheduleRequest.deserialize(bytes);
    }
}
export class ListBackupSchedulesRequest extends pb_1.Message {
    #one_of_decls: number[][] = [];
    constructor(data?: any[] | {
        parent?: string;
    }) {
        super();
        pb_1.Message.initialize(this, Array.isArray(data) ? data : [], 0, -1, [], this.#one_of_decls);
        if (!Array.isArray(data) && typeof data == "object") {
            if ("parent" in data && data.parent != undefined) {
                this.parent = data.parent;
            }
        }
    }
    get parent() {
        return pb_1.Message.getFieldWithDefault(this, 1, "") as string;
    }
    set parent(value: string) {
        pb_1.Message.setField(this, 1, value);
    }
    static fromObject(data: {
        parent?: string;
    }): ListBackupSchedulesRequest {
        const message = new ListBackupSchedulesRequest({});
        if (data.parent != null) {
            message.parent = data.parent;
        }
        return message;
    }
    toObject() {
        const data: {
            parent?: string;
        } = {};
        if (this.parent != null) {
            data.parent = this.parent;
        }
        return data;
    }
    serialize(): Uint8Array;
    serialize(w: pb_1.BinaryWriter): void;
    serialize(w?: pb_1.BinaryWriter): Uint8Array | void {
        const writer = w || new pb_1.BinaryWriter();
        if (this.parent.length)
            writer.writeString(1, this.parent);
        if (!w)
            return writer.getResultBuffer();
    }
    static deserialize(bytes: Uint8Array | pb_1.BinaryReader): ListBackupSchedulesRequest {
        const reader = bytes instanceof pb_1.BinaryReader ? bytes : new pb_1.BinaryReader(bytes), message = new ListBackupSchedulesRequest();
        while (reader.nextField()) {
            if (reader.isEndGroup())
                break;
            switch (reader.getFieldNumber()) {
                case 1:
                    message.parent = reader.readString();
                    break;
                default: reader.skipField();
            }
        }
        return message;
    }
    serializeBinary(): Uint8Array {
        return this.serialize();
    }
    static override deserializeBinary(bytes: Uint8Array): ListBackupSchedulesRequest {
        return ListBackupSchedulesRequest.deserialize(bytes);
    }
}
export class ListBackupSchedulesResponse extends pb_1.Message {
    #one_of_decls: number[][] = [];
    constructor(data?: any[] | {
        backup_schedules?: dependency_10.BackupSchedule[];
    }) {
        super();
        pb_1.Message.initialize(this, Array.isArray(data) ? data : [], 0, -1, [1], this.#one_of_decls);
        if (!Array.isArray(data) && typeof data == "object") {
            if ("backup_schedules" in data && data.backup_schedules != undefined) {
                this.backup_schedules = data.backup_schedules;
            }
        }
    }
    get backup_schedules() {
        return pb_1.Message.getRepeatedWrapperField(this, dependency_10.BackupSchedule, 1) as dependency_10.BackupSchedule[];
    }
    set backup_schedules(value: dependency_10.BackupSchedule[]) {
        pb_1.Message.setRepeatedWrapperField(this, 1, value);
    }
    static fromObject(data: {
        backup_schedules?: ReturnType<typeof dependency_10.BackupSchedule.prototype.toObject>[];
    }): ListBackupSchedulesResponse {
        const message = new ListBackupSchedulesResponse({});
        if (data.backup_schedules != null) {
            message.backup_schedules = data.backup_schedules.map(item => dependency_10.BackupSchedule.fromObject(item));
        }
        return message;
    }
    toObject() {
        const data: {
            backup_schedules?: ReturnType<typeof dependency_10.BackupSchedule.prototype.toObject>[];
        } = {};
        if (this.backup_schedules != null) {
            data.backup_schedules = this.backup_schedules.map((item: dependency_10.BackupSchedule) => item.toObject());
        }
        return data;
    }
    serialize(): Uint8Array;
    serialize(w: pb_1.BinaryWriter): void;
    serialize(w?: pb_1.BinaryWriter): Uint8Array | void {
        const writer = w || new pb_1.BinaryWriter();
        if (this.backup_schedules.length)
            writer.writeRepeatedMessage(1, this.backup_schedules, (item: dependency_10.BackupSchedule) => item.serialize(writer));
        if (!w)
            return writer.getResultBuffer();
    }
    static deserialize(bytes: Uint8Array | pb_1.BinaryReader): ListBackupSchedulesResponse {
        const reader = bytes instanceof pb_1.BinaryReader ? bytes : new pb_1.BinaryReader(bytes), message = new ListBackupSchedulesResponse();
        while (reader.nextField()) {
            if (reader.isEndGroup())
                break;
            switch (reader.getFieldNumber()) {
                case 1:
                    reader.readMessage(message.backup_schedules, () => pb_1.Message.addToRepeatedWrapperField(message, 1, dependency_10.BackupSchedule.deserialize(reader), dependency_10.BackupSchedule));
                    break;
                default: reader.skipField();
            }
        }
        return message;
    }
    serializeBinary(): Uint8Array {
        return this.serialize();
    }
    static override deserializeBinary(bytes: Uint8Array): ListBackupSchedulesResponse {
        return ListBackupSchedulesResponse.deserialize(bytes);
    }
}
export class DeleteBackupScheduleRequest extends pb_1.Message {
    #one_of_decls: number[][] = [];
    constructor(data?: any[] | {
        name?: string;
    }) {
        super();
        pb_1.Message.initialize(this, Array.isArray(data) ? data : [], 0, -1, [], this.#one_of_decls);
        if (!Array.isArray(data) && typeof data == "object") {
            if ("name" in data && data.name != undefined) {
                this.name = data.name;
            }
        }
    }
    get name() {
        return pb_1.Message.getFieldWithDefault(this, 1, "") as string;
    }
    set name(value: string) {
        pb_1.Message.setField(this, 1, value);
    }
    static fromObject(data: {
        name?: string;
    }): DeleteBackupScheduleRequest {
        const message = new DeleteBackupScheduleRequest({});
        if (data.name != null) {
            message.name = data.name;
        }
        return message;
    }
    toObject() {
        const data: {
            name?: string;
        } = {};
        if (this.name != null) {
            data.name = this.name;
        }
        return data;
    }
    serialize(): Uint8Array;
    serialize(w: pb_1.BinaryWriter): void;
    serialize(w?: pb_1.BinaryWriter): Uint8Array | void {
        const writer = w || new pb_1.BinaryWriter();
        if (this.name.length)
            writer.writeString(1, this.name);
        if (!w)
            return writer.getResultBuffer();
    }
    static deserialize(bytes: Uint8Array | pb_1.BinaryReader): DeleteBackupScheduleRequest {
        const reader = bytes instanceof pb_1.BinaryReader ? bytes : new pb_1.BinaryReader(bytes), message = new DeleteBackupScheduleRequest();
        while (reader.nextField()) {
            if (reader.isEndGroup())
                break;
            switch (reader.getFieldNumber()) {
                case 1:
                    message.name = reader.readString();
                    break;
                default: reader.skipField();
            }
        }
        return message;
    }
    serializeBinary(): Uint8Array {
        return this.serialize();
    }
    static override deserializeBinary(bytes: Uint8Array): DeleteBackupScheduleRequest {
        return DeleteBackupScheduleRequest.deserialize(bytes);
    }
}
export class CreateIndexRequest extends pb_1.Message {
    #one_of_decls: number[][] = [];
    constructor(data?: any[] | {
        parent?: string;
        index?: dependency_8.Index;
    }) {
        super();
        pb_1.Message.initialize(this, Array.isArray(data) ? data : [], 0, -1, [], this.#one_of_decls);
        if (!Array.isArray(data) && typeof data == "object") {
            if ("parent" in data && data.parent != undefined) {
                this.parent = data.parent;
            }
            if ("index" in data && data.index != undefined) {
                this.index = data.index;
            }
        }
    }
    get parent() {
        return pb_1.Message.getFieldWithDefault(this, 1, "") as string;
    }
    set parent(value: string) {
        pb_1.Message.setField(this, 1, value);
    }
    get index() {
        return pb_1.Message.getWrapperField(this, dependency_8.Index, 2) as dependency_8.Index;
    }
    set index(value: dependency_8.Index) {
        pb_1.Message.setWrapperField(this, 2, value);
    }
    get has_index() {
        return pb_1.Message.getField(this, 2) != null;
    }
    static fromObject(data: {
        parent?: string;
        index?: ReturnType<typeof dependency_8.Index.prototype.toObject>;
    }): CreateIndexRequest {
        const message = new CreateIndexRequest({});
        if (data.parent != null) {
            message.parent = data.parent;
        }
        if (data.index != null) {
            message.index = dependency_8.Index.fromObject(data.index);
        }
        return message;
    }
    toObject() {
        const data: {
            parent?: string;
            index?: ReturnType<typeof dependency_8.Index.prototype.toObject>;
        } = {};
        if (this.parent != null) {
            data.parent = this.parent;
        }
        if (this.index != null) {
            data.index = this.index.toObject();
        }
        return data;
    }
    serialize(): Uint8Array;
    serialize(w: pb_1.BinaryWriter): void;
    serialize(w?: pb_1.BinaryWriter): Uint8Array | void {
        const writer = w || new pb_1.BinaryWriter();
        if (this.parent.length)
            writer.writeString(1, this.parent);
        if (this.has_index)
            writer.writeMessage(2, this.index, () => this.index.serialize(writer));
        if (!w)
            return writer.getResultBuffer();
    }
    static deserialize(bytes: Uint8Array | pb_1.BinaryReader): CreateIndexRequest {
        const reader = bytes instanceof pb_1.BinaryReader ? bytes : new pb_1.BinaryReader(bytes), message = new CreateIndexRequest();
        while (reader.nextField()) {
            if (reader.isEndGroup())
                break;
            switch (reader.getFieldNumber()) {
                case 1:
                    message.parent = reader.readString();
                    break;
                case 2:
                    reader.readMessage(message.index, () => message.index = dependency_8.Index.deserialize(reader));
                    break;
                default: reader.skipField();
            }
        }
        return message;
    }
    serializeBinary(): Uint8Array {
        return this.serialize();
    }
    static override deserializeBinary(bytes: Uint8Array): CreateIndexRequest {
        return CreateIndexRequest.deserialize(bytes);
    }
}
export class ListIndexesRequest extends pb_1.Message {
    #one_of_decls: number[][] = [];
    constructor(data?: any[] | {
        parent?: string;
        filter?: string;
        page_size?: number;
        page_token?: string;
    }) {
        super();
        pb_1.Message.initialize(this, Array.isArray(data) ? data : [], 0, -1, [], this.#one_of_decls);
        if (!Array.isArray(data) && typeof data == "object") {
            if ("parent" in data && data.parent != undefined) {
                this.parent = data.parent;
            }
            if ("filter" in data && data.filter != undefined) {
                this.filter = data.filter;
            }
            if ("page_size" in data && data.page_size != undefined) {
                this.page_size = data.page_size;
            }
            if ("page_token" in data && data.page_token != undefined) {
                this.page_token = data.page_token;
            }
        }
    }
    get parent() {
        return pb_1.Message.getFieldWithDefault(this, 1, "") as string;
    }
    set parent(value: string) {
        pb_1.Message.setField(this, 1, value);
    }
    get filter() {
        return pb_1.Message.getFieldWithDefault(this, 2, "") as string;
    }
    set filter(value: string) {
        pb_1.Message.setField(this, 2, value);
    }
    get page_size() {
        return pb_1.Message.getFieldWithDefault(this, 3, 0) as number;
    }
    set page_size(value: number) {
        pb_1.Message.setField(this, 3, value);
    }
    get page_token() {
        return pb_1.Message.getFieldWithDefault(this, 4, "") as string;
    }
    set page_token(value: string) {
        pb_1.Message.setField(this, 4, value);
    }
    static fromObject(data: {
        parent?: string;
        filter?: string;
        page_size?: number;
        page_token?: string;
    }): ListIndexesRequest {
        const message = new ListIndexesRequest({});
        if (data.parent != null) {
            message.parent = data.parent;
        }
        if (data.filter != null) {
            message.filter = data.filter;
        }
        if (data.page_size != null) {
            message.page_size = data.page_size;
        }
        if (data.page_token != null) {
            message.page_token = data.page_token;
        }
        return message;
    }
    toObject() {
        const data: {
            parent?: string;
            filter?: string;
            page_size?: number;
            page_token?: string;
        } = {};
        if (this.parent != null) {
            data.parent = this.parent;
        }
        if (this.filter != null) {
            data.filter = this.filter;
        }
        if (this.page_size != null) {
            data.page_size = this.page_size;
        }
        if (this.page_token != null) {
            data.page_token = this.page_token;
        }
        return data;
    }
    serialize(): Uint8Array;
    serialize(w: pb_1.BinaryWriter): void;
    serialize(w?: pb_1.BinaryWriter): Uint8Array | void {
        const writer = w || new pb_1.BinaryWriter();
        if (this.parent.length)
            writer.writeString(1, this.parent);
        if (this.filter.length)
            writer.writeString(2, this.filter);
        if (this.page_size != 0)
            writer.writeInt32(3, this.page_size);
        if (this.page_token.length)
            writer.writeString(4, this.page_token);
        if (!w)
            return writer.getResultBuffer();
    }
    static deserialize(bytes: Uint8Array | pb_1.BinaryReader): ListIndexesRequest {
        const reader = bytes instanceof pb_1.BinaryReader ? bytes : new pb_1.BinaryReader(bytes), message = new ListIndexesRequest();
        while (reader.nextField()) {
            if (reader.isEndGroup())
                break;
            switch (reader.getFieldNumber()) {
                case 1:
                    message.parent = reader.readString();
                    break;
                case 2:
                    message.filter = reader.readString();
                    break;
                case 3:
                    message.page_size = reader.readInt32();
                    break;
                case 4:
                    message.page_token = reader.readString();
                    break;
                default: reader.skipField();
            }
        }
        return message;
    }
    serializeBinary(): Uint8Array {
        return this.serialize();
    }
    static override deserializeBinary(bytes: Uint8Array): ListIndexesRequest {
        return ListIndexesRequest.deserialize(bytes);
    }
}
export class ListIndexesResponse extends pb_1.Message {
    #one_of_decls: number[][] = [];
    constructor(data?: any[] | {
        indexes?: dependency_8.Index[];
        next_page_token?: string;
    }) {
        super();
        pb_1.Message.initialize(this, Array.isArray(data) ? data : [], 0, -1, [1], this.#one_of_decls);
        if (!Array.isArray(data) && typeof data == "object") {
            if ("indexes" in data && data.indexes != undefined) {
                this.indexes = data.indexes;
            }
            if ("next_page_token" in data && data.next_page_token != undefined) {
                this.next_page_token = data.next_page_token;
            }
        }
    }
    get indexes() {
        return pb_1.Message.getRepeatedWrapperField(this, dependency_8.Index, 1) as dependency_8.Index[];
    }
    set indexes(value: dependency_8.Index[]) {
        pb_1.Message.setRepeatedWrapperField(this, 1, value);
    }
    get next_page_token() {
        return pb_1.Message.getFieldWithDefault(this, 2, "") as string;
    }
    set next_page_token(value: string) {
        pb_1.Message.setField(this, 2, value);
    }
    static fromObject(data: {
        indexes?: ReturnType<typeof dependency_8.Index.prototype.toObject>[];
        next_page_token?: string;
    }): ListIndexesResponse {
        const message = new ListIndexesResponse({});
        if (data.indexes != null) {
            message.indexes = data.indexes.map(item => dependency_8.Index.fromObject(item));
        }
        if (data.next_page_token != null) {
            message.next_page_token = data.next_page_token;
        }
        return message;
    }
    toObject() {
        const data: {
            indexes?: ReturnType<typeof dependency_8.Index.prototype.toObject>[];
            next_page_token?: string;
        } = {};
        if (this.indexes != null) {
            data.indexes = this.indexes.map((item: dependency_8.Index) => item.toObject());
        }
        if (this.next_page_token != null) {
            data.next_page_token = this.next_page_token;
        }
        return data;
    }
    serialize(): Uint8Array;
    serialize(w: pb_1.BinaryWriter): void;
    serialize(w?: pb_1.BinaryWriter): Uint8Array | void {
        const writer = w || new pb_1.BinaryWriter();
        if (this.indexes.length)
            writer.writeRepeatedMessage(1, this.indexes, (item: dependency_8.Index) => item.serialize(writer));
        if (this.next_page_token.length)
            writer.writeString(2, this.next_page_token);
        if (!w)
            return writer.getResultBuffer();
    }
    static deserialize(bytes: Uint8Array | pb_1.BinaryReader): ListIndexesResponse {
        const reader = bytes instanceof pb_1.BinaryReader ? bytes : new pb_1.BinaryReader(bytes), message = new ListIndexesResponse();
        while (reader.nextField()) {
            if (reader.isEndGroup())
                break;
            switch (reader.getFieldNumber()) {
                case 1:
                    reader.readMessage(message.indexes, () => pb_1.Message.addToRepeatedWrapperField(message, 1, dependency_8.Index.deserialize(reader), dependency_8.Index));
                    break;
                case 2:
                    message.next_page_token = reader.readString();
                    break;
                default: reader.skipField();
            }
        }
        return message;
    }
    serializeBinary(): Uint8Array {
        return this.serialize();
    }
    static override deserializeBinary(bytes: Uint8Array): ListIndexesResponse {
        return ListIndexesResponse.deserialize(bytes);
    }
}
export class GetIndexRequest extends pb_1.Message {
    #one_of_decls: number[][] = [];
    constructor(data?: any[] | {
        name?: string;
    }) {
        super();
        pb_1.Message.initialize(this, Array.isArray(data) ? data : [], 0, -1, [], this.#one_of_decls);
        if (!Array.isArray(data) && typeof data == "object") {
            if ("name" in data && data.name != undefined) {
                this.name = data.name;
            }
        }
    }
    get name() {
        return pb_1.Message.getFieldWithDefault(this, 1, "") as string;
    }
    set name(value: string) {
        pb_1.Message.setField(this, 1, value);
    }
    static fromObject(data: {
        name?: string;
    }): GetIndexRequest {
        const message = new GetIndexRequest({});
        if (data.name != null) {
            message.name = data.name;
        }
        return message;
    }
    toObject() {
        const data: {
            name?: string;
        } = {};
        if (this.name != null) {
            data.name = this.name;
        }
        return data;
    }
    serialize(): Uint8Array;
    serialize(w: pb_1.BinaryWriter): void;
    serialize(w?: pb_1.BinaryWriter): Uint8Array | void {
        const writer = w || new pb_1.BinaryWriter();
        if (this.name.length)
            writer.writeString(1, this.name);
        if (!w)
            return writer.getResultBuffer();
    }
    static deserialize(bytes: Uint8Array | pb_1.BinaryReader): GetIndexRequest {
        const reader = bytes instanceof pb_1.BinaryReader ? bytes : new pb_1.BinaryReader(bytes), message = new GetIndexRequest();
        while (reader.nextField()) {
            if (reader.isEndGroup())
                break;
            switch (reader.getFieldNumber()) {
                case 1:
                    message.name = reader.readString();
                    break;
                default: reader.skipField();
            }
        }
        return message;
    }
    serializeBinary(): Uint8Array {
        return this.serialize();
    }
    static override deserializeBinary(bytes: Uint8Array): GetIndexRequest {
        return GetIndexRequest.deserialize(bytes);
    }
}
export class DeleteIndexRequest extends pb_1.Message {
    #one_of_decls: number[][] = [];
    constructor(data?: any[] | {
        name?: string;
    }) {
        super();
        pb_1.Message.initialize(this, Array.isArray(data) ? data : [], 0, -1, [], this.#one_of_decls);
        if (!Array.isArray(data) && typeof data == "object") {
            if ("name" in data && data.name != undefined) {
                this.name = data.name;
            }
        }
    }
    get name() {
        return pb_1.Message.getFieldWithDefault(this, 1, "") as string;
    }
    set name(value: string) {
        pb_1.Message.setField(this, 1, value);
    }
    static fromObject(data: {
        name?: string;
    }): DeleteIndexRequest {
        const message = new DeleteIndexRequest({});
        if (data.name != null) {
            message.name = data.name;
        }
        return message;
    }
    toObject() {
        const data: {
            name?: string;
        } = {};
        if (this.name != null) {
            data.name = this.name;
        }
        return data;
    }
    serialize(): Uint8Array;
    serialize(w: pb_1.BinaryWriter): void;
    serialize(w?: pb_1.BinaryWriter): Uint8Array | void {
        const writer = w || new pb_1.BinaryWriter();
        if (this.name.length)
            writer.writeString(1, this.name);
        if (!w)
            return writer.getResultBuffer();
    }
    static deserialize(bytes: Uint8Array | pb_1.BinaryReader): DeleteIndexRequest {
        const reader = bytes instanceof pb_1.BinaryReader ? bytes : new pb_1.BinaryReader(bytes), message = new DeleteIndexRequest();
        while (reader.nextField()) {
            if (reader.isEndGroup())
                break;
            switch (reader.getFieldNumber()) {
                case 1:
                    message.name = reader.readString();
                    break;
                default: reader.skipField();
            }
        }
        return message;
    }
    serializeBinary(): Uint8Array {
        return this.serialize();
    }
    static override deserializeBinary(bytes: Uint8Array): DeleteIndexRequest {
        return DeleteIndexRequest.deserialize(bytes);
    }
}
export class UpdateFieldRequest extends pb_1.Message {
    #one_of_decls: number[][] = [];
    constructor(data?: any[] | {
        field?: dependency_7.Field;
        update_mask?: dependency_13.FieldMask;
    }) {
        super();
        pb_1.Message.initialize(this, Array.isArray(data) ? data : [], 0, -1, [], this.#one_of_decls);
        if (!Array.isArray(data) && typeof data == "object") {
            if ("field" in data && data.field != undefined) {
                this.field = data.field;
            }
            if ("update_mask" in data && data.update_mask != undefined) {
                this.update_mask = data.update_mask;
            }
        }
    }
    get field() {
        return pb_1.Message.getWrapperField(this, dependency_7.Field, 1) as dependency_7.Field;
    }
    set field(value: dependency_7.Field) {
        pb_1.Message.setWrapperField(this, 1, value);
    }
    get has_field() {
        return pb_1.Message.getField(this, 1) != null;
    }
    get update_mask() {
        return pb_1.Message.getWrapperField(this, dependency_13.FieldMask, 2) as dependency_13.FieldMask;
    }
    set update_mask(value: dependency_13.FieldMask) {
        pb_1.Message.setWrapperField(this, 2, value);
    }
    get has_update_mask() {
        return pb_1.Message.getField(this, 2) != null;
    }
    static fromObject(data: {
        field?: ReturnType<typeof dependency_7.Field.prototype.toObject>;
        update_mask?: ReturnType<typeof dependency_13.FieldMask.prototype.toObject>;
    }): UpdateFieldRequest {
        const message = new UpdateFieldRequest({});
        if (data.field != null) {
            message.field = dependency_7.Field.fromObject(data.field);
        }
        if (data.update_mask != null) {
            message.update_mask = dependency_13.FieldMask.fromObject(data.update_mask);
        }
        return message;
    }
    toObject() {
        const data: {
            field?: ReturnType<typeof dependency_7.Field.prototype.toObject>;
            update_mask?: ReturnType<typeof dependency_13.FieldMask.prototype.toObject>;
        } = {};
        if (this.field != null) {
            data.field = this.field.toObject();
        }
        if (this.update_mask != null) {
            data.update_mask = this.update_mask.toObject();
        }
        return data;
    }
    serialize(): Uint8Array;
    serialize(w: pb_1.BinaryWriter): void;
    serialize(w?: pb_1.BinaryWriter): Uint8Array | void {
        const writer = w || new pb_1.BinaryWriter();
        if (this.has_field)
            writer.writeMessage(1, this.field, () => this.field.serialize(writer));
        if (this.has_update_mask)
            writer.writeMessage(2, this.update_mask, () => this.update_mask.serialize(writer));
        if (!w)
            return writer.getResultBuffer();
    }
    static deserialize(bytes: Uint8Array | pb_1.BinaryReader): UpdateFieldRequest {
        const reader = bytes instanceof pb_1.BinaryReader ? bytes : new pb_1.BinaryReader(bytes), message = new UpdateFieldRequest();
        while (reader.nextField()) {
            if (reader.isEndGroup())
                break;
            switch (reader.getFieldNumber()) {
                case 1:
                    reader.readMessage(message.field, () => message.field = dependency_7.Field.deserialize(reader));
                    break;
                case 2:
                    reader.readMessage(message.update_mask, () => message.update_mask = dependency_13.FieldMask.deserialize(reader));
                    break;
                default: reader.skipField();
            }
        }
        return message;
    }
    serializeBinary(): Uint8Array {
        return this.serialize();
    }
    static override deserializeBinary(bytes: Uint8Array): UpdateFieldRequest {
        return UpdateFieldRequest.deserialize(bytes);
    }
}
export class GetFieldRequest extends pb_1.Message {
    #one_of_decls: number[][] = [];
    constructor(data?: any[] | {
        name?: string;
    }) {
        super();
        pb_1.Message.initialize(this, Array.isArray(data) ? data : [], 0, -1, [], this.#one_of_decls);
        if (!Array.isArray(data) && typeof data == "object") {
            if ("name" in data && data.name != undefined) {
                this.name = data.name;
            }
        }
    }
    get name() {
        return pb_1.Message.getFieldWithDefault(this, 1, "") as string;
    }
    set name(value: string) {
        pb_1.Message.setField(this, 1, value);
    }
    static fromObject(data: {
        name?: string;
    }): GetFieldRequest {
        const message = new GetFieldRequest({});
        if (data.name != null) {
            message.name = data.name;
        }
        return message;
    }
    toObject() {
        const data: {
            name?: string;
        } = {};
        if (this.name != null) {
            data.name = this.name;
        }
        return data;
    }
    serialize(): Uint8Array;
    serialize(w: pb_1.BinaryWriter): void;
    serialize(w?: pb_1.BinaryWriter): Uint8Array | void {
        const writer = w || new pb_1.BinaryWriter();
        if (this.name.length)
            writer.writeString(1, this.name);
        if (!w)
            return writer.getResultBuffer();
    }
    static deserialize(bytes: Uint8Array | pb_1.BinaryReader): GetFieldRequest {
        const reader = bytes instanceof pb_1.BinaryReader ? bytes : new pb_1.BinaryReader(bytes), message = new GetFieldRequest();
        while (reader.nextField()) {
            if (reader.isEndGroup())
                break;
            switch (reader.getFieldNumber()) {
                case 1:
                    message.name = reader.readString();
                    break;
                default: reader.skipField();
            }
        }
        return message;
    }
    serializeBinary(): Uint8Array {
        return this.serialize();
    }
    static override deserializeBinary(bytes: Uint8Array): GetFieldRequest {
        return GetFieldRequest.deserialize(bytes);
    }
}
export class ListFieldsRequest extends pb_1.Message {
    #one_of_decls: number[][] = [];
    constructor(data?: any[] | {
        parent?: string;
        filter?: string;
        page_size?: number;
        page_token?: string;
    }) {
        super();
        pb_1.Message.initialize(this, Array.isArray(data) ? data : [], 0, -1, [], this.#one_of_decls);
        if (!Array.isArray(data) && typeof data == "object") {
            if ("parent" in data && data.parent != undefined) {
                this.parent = data.parent;
            }
            if ("filter" in data && data.filter != undefined) {
                this.filter = data.filter;
            }
            if ("page_size" in data && data.page_size != undefined) {
                this.page_size = data.page_size;
            }
            if ("page_token" in data && data.page_token != undefined) {
                this.page_token = data.page_token;
            }
        }
    }
    get parent() {
        return pb_1.Message.getFieldWithDefault(this, 1, "") as string;
    }
    set parent(value: string) {
        pb_1.Message.setField(this, 1, value);
    }
    get filter() {
        return pb_1.Message.getFieldWithDefault(this, 2, "") as string;
    }
    set filter(value: string) {
        pb_1.Message.setField(this, 2, value);
    }
    get page_size() {
        return pb_1.Message.getFieldWithDefault(this, 3, 0) as number;
    }
    set page_size(value: number) {
        pb_1.Message.setField(this, 3, value);
    }
    get page_token() {
        return pb_1.Message.getFieldWithDefault(this, 4, "") as string;
    }
    set page_token(value: string) {
        pb_1.Message.setField(this, 4, value);
    }
    static fromObject(data: {
        parent?: string;
        filter?: string;
        page_size?: number;
        page_token?: string;
    }): ListFieldsRequest {
        const message = new ListFieldsRequest({});
        if (data.parent != null) {
            message.parent = data.parent;
        }
        if (data.filter != null) {
            message.filter = data.filter;
        }
        if (data.page_size != null) {
            message.page_size = data.page_size;
        }
        if (data.page_token != null) {
            message.page_token = data.page_token;
        }
        return message;
    }
    toObject() {
        const data: {
            parent?: string;
            filter?: string;
            page_size?: number;
            page_token?: string;
        } = {};
        if (this.parent != null) {
            data.parent = this.parent;
        }
        if (this.filter != null) {
            data.filter = this.filter;
        }
        if (this.page_size != null) {
            data.page_size = this.page_size;
        }
        if (this.page_token != null) {
            data.page_token = this.page_token;
        }
        return data;
    }
    serialize(): Uint8Array;
    serialize(w: pb_1.BinaryWriter): void;
    serialize(w?: pb_1.BinaryWriter): Uint8Array | void {
        const writer = w || new pb_1.BinaryWriter();
        if (this.parent.length)
            writer.writeString(1, this.parent);
        if (this.filter.length)
            writer.writeString(2, this.filter);
        if (this.page_size != 0)
            writer.writeInt32(3, this.page_size);
        if (this.page_token.length)
            writer.writeString(4, this.page_token);
        if (!w)
            return writer.getResultBuffer();
    }
    static deserialize(bytes: Uint8Array | pb_1.BinaryReader): ListFieldsRequest {
        const reader = bytes instanceof pb_1.BinaryReader ? bytes : new pb_1.BinaryReader(bytes), message = new ListFieldsRequest();
        while (reader.nextField()) {
            if (reader.isEndGroup())
                break;
            switch (reader.getFieldNumber()) {
                case 1:
                    message.parent = reader.readString();
                    break;
                case 2:
                    message.filter = reader.readString();
                    break;
                case 3:
                    message.page_size = reader.readInt32();
                    break;
                case 4:
                    message.page_token = reader.readString();
                    break;
                default: reader.skipField();
            }
        }
        return message;
    }
    serializeBinary(): Uint8Array {
        return this.serialize();
    }
    static override deserializeBinary(bytes: Uint8Array): ListFieldsRequest {
        return ListFieldsRequest.deserialize(bytes);
    }
}
export class ListFieldsResponse extends pb_1.Message {
    #one_of_decls: number[][] = [];
    constructor(data?: any[] | {
        fields?: dependency_7.Field[];
        next_page_token?: string;
    }) {
        super();
        pb_1.Message.initialize(this, Array.isArray(data) ? data : [], 0, -1, [1], this.#one_of_decls);
        if (!Array.isArray(data) && typeof data == "object") {
            if ("fields" in data && data.fields != undefined) {
                this.fields = data.fields;
            }
            if ("next_page_token" in data && data.next_page_token != undefined) {
                this.next_page_token = data.next_page_token;
            }
        }
    }
    get fields() {
        return pb_1.Message.getRepeatedWrapperField(this, dependency_7.Field, 1) as dependency_7.Field[];
    }
    set fields(value: dependency_7.Field[]) {
        pb_1.Message.setRepeatedWrapperField(this, 1, value);
    }
    get next_page_token() {
        return pb_1.Message.getFieldWithDefault(this, 2, "") as string;
    }
    set next_page_token(value: string) {
        pb_1.Message.setField(this, 2, value);
    }
    static fromObject(data: {
        fields?: ReturnType<typeof dependency_7.Field.prototype.toObject>[];
        next_page_token?: string;
    }): ListFieldsResponse {
        const message = new ListFieldsResponse({});
        if (data.fields != null) {
            message.fields = data.fields.map(item => dependency_7.Field.fromObject(item));
        }
        if (data.next_page_token != null) {
            message.next_page_token = data.next_page_token;
        }
        return message;
    }
    toObject() {
        const data: {
            fields?: ReturnType<typeof dependency_7.Field.prototype.toObject>[];
            next_page_token?: string;
        } = {};
        if (this.fields != null) {
            data.fields = this.fields.map((item: dependency_7.Field) => item.toObject());
        }
        if (this.next_page_token != null) {
            data.next_page_token = this.next_page_token;
        }
        return data;
    }
    serialize(): Uint8Array;
    serialize(w: pb_1.BinaryWriter): void;
    serialize(w?: pb_1.BinaryWriter): Uint8Array | void {
        const writer = w || new pb_1.BinaryWriter();
        if (this.fields.length)
            writer.writeRepeatedMessage(1, this.fields, (item: dependency_7.Field) => item.serialize(writer));
        if (this.next_page_token.length)
            writer.writeString(2, this.next_page_token);
        if (!w)
            return writer.getResultBuffer();
    }
    static deserialize(bytes: Uint8Array | pb_1.BinaryReader): ListFieldsResponse {
        const reader = bytes instanceof pb_1.BinaryReader ? bytes : new pb_1.BinaryReader(bytes), message = new ListFieldsResponse();
        while (reader.nextField()) {
            if (reader.isEndGroup())
                break;
            switch (reader.getFieldNumber()) {
                case 1:
                    reader.readMessage(message.fields, () => pb_1.Message.addToRepeatedWrapperField(message, 1, dependency_7.Field.deserialize(reader), dependency_7.Field));
                    break;
                case 2:
                    message.next_page_token = reader.readString();
                    break;
                default: reader.skipField();
            }
        }
        return message;
    }
    serializeBinary(): Uint8Array {
        return this.serialize();
    }
    static override deserializeBinary(bytes: Uint8Array): ListFieldsResponse {
        return ListFieldsResponse.deserialize(bytes);
    }
}
export class ExportDocumentsRequest extends pb_1.Message {
    #one_of_decls: number[][] = [];
    constructor(data?: any[] | {
        name?: string;
        collection_ids?: string[];
        output_uri_prefix?: string;
        namespace_ids?: string[];
        snapshot_time?: dependency_14.Timestamp;
    }) {
        super();
        pb_1.Message.initialize(this, Array.isArray(data) ? data : [], 0, -1, [2, 4], this.#one_of_decls);
        if (!Array.isArray(data) && typeof data == "object") {
            if ("name" in data && data.name != undefined) {
                this.name = data.name;
            }
            if ("collection_ids" in data && data.collection_ids != undefined) {
                this.collection_ids = data.collection_ids;
            }
            if ("output_uri_prefix" in data && data.output_uri_prefix != undefined) {
                this.output_uri_prefix = data.output_uri_prefix;
            }
            if ("namespace_ids" in data && data.namespace_ids != undefined) {
                this.namespace_ids = data.namespace_ids;
            }
            if ("snapshot_time" in data && data.snapshot_time != undefined) {
                this.snapshot_time = data.snapshot_time;
            }
        }
    }
    get name() {
        return pb_1.Message.getFieldWithDefault(this, 1, "") as string;
    }
    set name(value: string) {
        pb_1.Message.setField(this, 1, value);
    }
    get collection_ids() {
        return pb_1.Message.getFieldWithDefault(this, 2, []) as string[];
    }
    set collection_ids(value: string[]) {
        pb_1.Message.setField(this, 2, value);
    }
    get output_uri_prefix() {
        return pb_1.Message.getFieldWithDefault(this, 3, "") as string;
    }
    set output_uri_prefix(value: string) {
        pb_1.Message.setField(this, 3, value);
    }
    get namespace_ids() {
        return pb_1.Message.getFieldWithDefault(this, 4, []) as string[];
    }
    set namespace_ids(value: string[]) {
        pb_1.Message.setField(this, 4, value);
    }
    get snapshot_time() {
        return pb_1.Message.getWrapperField(this, dependency_14.Timestamp, 5) as dependency_14.Timestamp;
    }
    set snapshot_time(value: dependency_14.Timestamp) {
        pb_1.Message.setWrapperField(this, 5, value);
    }
    get has_snapshot_time() {
        return pb_1.Message.getField(this, 5) != null;
    }
    static fromObject(data: {
        name?: string;
        collection_ids?: string[];
        output_uri_prefix?: string;
        namespace_ids?: string[];
        snapshot_time?: ReturnType<typeof dependency_14.Timestamp.prototype.toObject>;
    }): ExportDocumentsRequest {
        const message = new ExportDocumentsRequest({});
        if (data.name != null) {
            message.name = data.name;
        }
        if (data.collection_ids != null) {
            message.collection_ids = data.collection_ids;
        }
        if (data.output_uri_prefix != null) {
            message.output_uri_prefix = data.output_uri_prefix;
        }
        if (data.namespace_ids != null) {
            message.namespace_ids = data.namespace_ids;
        }
        if (data.snapshot_time != null) {
            message.snapshot_time = dependency_14.Timestamp.fromObject(data.snapshot_time);
        }
        return message;
    }
    toObject() {
        const data: {
            name?: string;
            collection_ids?: string[];
            output_uri_prefix?: string;
            namespace_ids?: string[];
            snapshot_time?: ReturnType<typeof dependency_14.Timestamp.prototype.toObject>;
        } = {};
        if (this.name != null) {
            data.name = this.name;
        }
        if (this.collection_ids != null) {
            data.collection_ids = this.collection_ids;
        }
        if (this.output_uri_prefix != null) {
            data.output_uri_prefix = this.output_uri_prefix;
        }
        if (this.namespace_ids != null) {
            data.namespace_ids = this.namespace_ids;
        }
        if (this.snapshot_time != null) {
            data.snapshot_time = this.snapshot_time.toObject();
        }
        return data;
    }
    serialize(): Uint8Array;
    serialize(w: pb_1.BinaryWriter): void;
    serialize(w?: pb_1.BinaryWriter): Uint8Array | void {
        const writer = w || new pb_1.BinaryWriter();
        if (this.name.length)
            writer.writeString(1, this.name);
        if (this.collection_ids.length)
            writer.writeRepeatedString(2, this.collection_ids);
        if (this.output_uri_prefix.length)
            writer.writeString(3, this.output_uri_prefix);
        if (this.namespace_ids.length)
            writer.writeRepeatedString(4, this.namespace_ids);
        if (this.has_snapshot_time)
            writer.writeMessage(5, this.snapshot_time, () => this.snapshot_time.serialize(writer));
        if (!w)
            return writer.getResultBuffer();
    }
    static deserialize(bytes: Uint8Array | pb_1.BinaryReader): ExportDocumentsRequest {
        const reader = bytes instanceof pb_1.BinaryReader ? bytes : new pb_1.BinaryReader(bytes), message = new ExportDocumentsRequest();
        while (reader.nextField()) {
            if (reader.isEndGroup())
                break;
            switch (reader.getFieldNumber()) {
                case 1:
                    message.name = reader.readString();
                    break;
                case 2:
                    pb_1.Message.addToRepeatedField(message, 2, reader.readString());
                    break;
                case 3:
                    message.output_uri_prefix = reader.readString();
                    break;
                case 4:
                    pb_1.Message.addToRepeatedField(message, 4, reader.readString());
                    break;
                case 5:
                    reader.readMessage(message.snapshot_time, () => message.snapshot_time = dependency_14.Timestamp.deserialize(reader));
                    break;
                default: reader.skipField();
            }
        }
        return message;
    }
    serializeBinary(): Uint8Array {
        return this.serialize();
    }
    static override deserializeBinary(bytes: Uint8Array): ExportDocumentsRequest {
        return ExportDocumentsRequest.deserialize(bytes);
    }
}
export class ImportDocumentsRequest extends pb_1.Message {
    #one_of_decls: number[][] = [];
    constructor(data?: any[] | {
        name?: string;
        collection_ids?: string[];
        input_uri_prefix?: string;
        namespace_ids?: string[];
    }) {
        super();
        pb_1.Message.initialize(this, Array.isArray(data) ? data : [], 0, -1, [2, 4], this.#one_of_decls);
        if (!Array.isArray(data) && typeof data == "object") {
            if ("name" in data && data.name != undefined) {
                this.name = data.name;
            }
            if ("collection_ids" in data && data.collection_ids != undefined) {
                this.collection_ids = data.collection_ids;
            }
            if ("input_uri_prefix" in data && data.input_uri_prefix != undefined) {
                this.input_uri_prefix = data.input_uri_prefix;
            }
            if ("namespace_ids" in data && data.namespace_ids != undefined) {
                this.namespace_ids = data.namespace_ids;
            }
        }
    }
    get name() {
        return pb_1.Message.getFieldWithDefault(this, 1, "") as string;
    }
    set name(value: string) {
        pb_1.Message.setField(this, 1, value);
    }
    get collection_ids() {
        return pb_1.Message.getFieldWithDefault(this, 2, []) as string[];
    }
    set collection_ids(value: string[]) {
        pb_1.Message.setField(this, 2, value);
    }
    get input_uri_prefix() {
        return pb_1.Message.getFieldWithDefault(this, 3, "") as string;
    }
    set input_uri_prefix(value: string) {
        pb_1.Message.setField(this, 3, value);
    }
    get namespace_ids() {
        return pb_1.Message.getFieldWithDefault(this, 4, []) as string[];
    }
    set namespace_ids(value: string[]) {
        pb_1.Message.setField(this, 4, value);
    }
    static fromObject(data: {
        name?: string;
        collection_ids?: string[];
        input_uri_prefix?: string;
        namespace_ids?: string[];
    }): ImportDocumentsRequest {
        const message = new ImportDocumentsRequest({});
        if (data.name != null) {
            message.name = data.name;
        }
        if (data.collection_ids != null) {
            message.collection_ids = data.collection_ids;
        }
        if (data.input_uri_prefix != null) {
            message.input_uri_prefix = data.input_uri_prefix;
        }
        if (data.namespace_ids != null) {
            message.namespace_ids = data.namespace_ids;
        }
        return message;
    }
    toObject() {
        const data: {
            name?: string;
            collection_ids?: string[];
            input_uri_prefix?: string;
            namespace_ids?: string[];
        } = {};
        if (this.name != null) {
            data.name = this.name;
        }
        if (this.collection_ids != null) {
            data.collection_ids = this.collection_ids;
        }
        if (this.input_uri_prefix != null) {
            data.input_uri_prefix = this.input_uri_prefix;
        }
        if (this.namespace_ids != null) {
            data.namespace_ids = this.namespace_ids;
        }
        return data;
    }
    serialize(): Uint8Array;
    serialize(w: pb_1.BinaryWriter): void;
    serialize(w?: pb_1.BinaryWriter): Uint8Array | void {
        const writer = w || new pb_1.BinaryWriter();
        if (this.name.length)
            writer.writeString(1, this.name);
        if (this.collection_ids.length)
            writer.writeRepeatedString(2, this.collection_ids);
        if (this.input_uri_prefix.length)
            writer.writeString(3, this.input_uri_prefix);
        if (this.namespace_ids.length)
            writer.writeRepeatedString(4, this.namespace_ids);
        if (!w)
            return writer.getResultBuffer();
    }
    static deserialize(bytes: Uint8Array | pb_1.BinaryReader): ImportDocumentsRequest {
        const reader = bytes instanceof pb_1.BinaryReader ? bytes : new pb_1.BinaryReader(bytes), message = new ImportDocumentsRequest();
        while (reader.nextField()) {
            if (reader.isEndGroup())
                break;
            switch (reader.getFieldNumber()) {
                case 1:
                    message.name = reader.readString();
                    break;
                case 2:
                    pb_1.Message.addToRepeatedField(message, 2, reader.readString());
                    break;
                case 3:
                    message.input_uri_prefix = reader.readString();
                    break;
                case 4:
                    pb_1.Message.addToRepeatedField(message, 4, reader.readString());
                    break;
                default: reader.skipField();
            }
        }
        return message;
    }
    serializeBinary(): Uint8Array {
        return this.serialize();
    }
    static override deserializeBinary(bytes: Uint8Array): ImportDocumentsRequest {
        return ImportDocumentsRequest.deserialize(bytes);
    }
}
export class BulkDeleteDocumentsRequest extends pb_1.Message {
    #one_of_decls: number[][] = [];
    constructor(data?: any[] | {
        name?: string;
        collection_ids?: string[];
        namespace_ids?: string[];
    }) {
        super();
        pb_1.Message.initialize(this, Array.isArray(data) ? data : [], 0, -1, [2, 3], this.#one_of_decls);
        if (!Array.isArray(data) && typeof data == "object") {
            if ("name" in data && data.name != undefined) {
                this.name = data.name;
            }
            if ("collection_ids" in data && data.collection_ids != undefined) {
                this.collection_ids = data.collection_ids;
            }
            if ("namespace_ids" in data && data.namespace_ids != undefined) {
                this.namespace_ids = data.namespace_ids;
            }
        }
    }
    get name() {
        return pb_1.Message.getFieldWithDefault(this, 1, "") as string;
    }
    set name(value: string) {
        pb_1.Message.setField(this, 1, value);
    }
    get collection_ids() {
        return pb_1.Message.getFieldWithDefault(this, 2, []) as string[];
    }
    set collection_ids(value: string[]) {
        pb_1.Message.setField(this, 2, value);
    }
    get namespace_ids() {
        return pb_1.Message.getFieldWithDefault(this, 3, []) as string[];
    }
    set namespace_ids(value: string[]) {
        pb_1.Message.setField(this, 3, value);
    }
    static fromObject(data: {
        name?: string;
        collection_ids?: string[];
        namespace_ids?: string[];
    }): BulkDeleteDocumentsRequest {
        const message = new BulkDeleteDocumentsRequest({});
        if (data.name != null) {
            message.name = data.name;
        }
        if (data.collection_ids != null) {
            message.collection_ids = data.collection_ids;
        }
        if (data.namespace_ids != null) {
            message.namespace_ids = data.namespace_ids;
        }
        return message;
    }
    toObject() {
        const data: {
            name?: string;
            collection_ids?: string[];
            namespace_ids?: string[];
        } = {};
        if (this.name != null) {
            data.name = this.name;
        }
        if (this.collection_ids != null) {
            data.collection_ids = this.collection_ids;
        }
        if (this.namespace_ids != null) {
            data.namespace_ids = this.namespace_ids;
        }
        return data;
    }
    serialize(): Uint8Array;
    serialize(w: pb_1.BinaryWriter): void;
    serialize(w?: pb_1.BinaryWriter): Uint8Array | void {
        const writer = w || new pb_1.BinaryWriter();
        if (this.name.length)
            writer.writeString(1, this.name);
        if (this.collection_ids.length)
            writer.writeRepeatedString(2, this.collection_ids);
        if (this.namespace_ids.length)
            writer.writeRepeatedString(3, this.namespace_ids);
        if (!w)
            return writer.getResultBuffer();
    }
    static deserialize(bytes: Uint8Array | pb_1.BinaryReader): BulkDeleteDocumentsRequest {
        const reader = bytes instanceof pb_1.BinaryReader ? bytes : new pb_1.BinaryReader(bytes), message = new BulkDeleteDocumentsRequest();
        while (reader.nextField()) {
            if (reader.isEndGroup())
                break;
            switch (reader.getFieldNumber()) {
                case 1:
                    message.name = reader.readString();
                    break;
                case 2:
                    pb_1.Message.addToRepeatedField(message, 2, reader.readString());
                    break;
                case 3:
                    pb_1.Message.addToRepeatedField(message, 3, reader.readString());
                    break;
                default: reader.skipField();
            }
        }
        return message;
    }
    serializeBinary(): Uint8Array {
        return this.serialize();
    }
    static override deserializeBinary(bytes: Uint8Array): BulkDeleteDocumentsRequest {
        return BulkDeleteDocumentsRequest.deserialize(bytes);
    }
}
export class BulkDeleteDocumentsResponse extends pb_1.Message {
    #one_of_decls: number[][] = [];
    constructor(data?: any[] | {}) {
        super();
        pb_1.Message.initialize(this, Array.isArray(data) ? data : [], 0, -1, [], this.#one_of_decls);
        if (!Array.isArray(data) && typeof data == "object") { }
    }
    static fromObject(data: {}): BulkDeleteDocumentsResponse {
        const message = new BulkDeleteDocumentsResponse({});
        return message;
    }
    toObject() {
        const data: {} = {};
        return data;
    }
    serialize(): Uint8Array;
    serialize(w: pb_1.BinaryWriter): void;
    serialize(w?: pb_1.BinaryWriter): Uint8Array | void {
        const writer = w || new pb_1.BinaryWriter();
        if (!w)
            return writer.getResultBuffer();
    }
    static deserialize(bytes: Uint8Array | pb_1.BinaryReader): BulkDeleteDocumentsResponse {
        const reader = bytes instanceof pb_1.BinaryReader ? bytes : new pb_1.BinaryReader(bytes), message = new BulkDeleteDocumentsResponse();
        while (reader.nextField()) {
            if (reader.isEndGroup())
                break;
            switch (reader.getFieldNumber()) {
                default: reader.skipField();
            }
        }
        return message;
    }
    serializeBinary(): Uint8Array {
        return this.serialize();
    }
    static override deserializeBinary(bytes: Uint8Array): BulkDeleteDocumentsResponse {
        return BulkDeleteDocumentsResponse.deserialize(bytes);
    }
}
export class GetBackupRequest extends pb_1.Message {
    #one_of_decls: number[][] = [];
    constructor(data?: any[] | {
        name?: string;
    }) {
        super();
        pb_1.Message.initialize(this, Array.isArray(data) ? data : [], 0, -1, [], this.#one_of_decls);
        if (!Array.isArray(data) && typeof data == "object") {
            if ("name" in data && data.name != undefined) {
                this.name = data.name;
            }
        }
    }
    get name() {
        return pb_1.Message.getFieldWithDefault(this, 1, "") as string;
    }
    set name(value: string) {
        pb_1.Message.setField(this, 1, value);
    }
    static fromObject(data: {
        name?: string;
    }): GetBackupRequest {
        const message = new GetBackupRequest({});
        if (data.name != null) {
            message.name = data.name;
        }
        return message;
    }
    toObject() {
        const data: {
            name?: string;
        } = {};
        if (this.name != null) {
            data.name = this.name;
        }
        return data;
    }
    serialize(): Uint8Array;
    serialize(w: pb_1.BinaryWriter): void;
    serialize(w?: pb_1.BinaryWriter): Uint8Array | void {
        const writer = w || new pb_1.BinaryWriter();
        if (this.name.length)
            writer.writeString(1, this.name);
        if (!w)
            return writer.getResultBuffer();
    }
    static deserialize(bytes: Uint8Array | pb_1.BinaryReader): GetBackupRequest {
        const reader = bytes instanceof pb_1.BinaryReader ? bytes : new pb_1.BinaryReader(bytes), message = new GetBackupRequest();
        while (reader.nextField()) {
            if (reader.isEndGroup())
                break;
            switch (reader.getFieldNumber()) {
                case 1:
                    message.name = reader.readString();
                    break;
                default: reader.skipField();
            }
        }
        return message;
    }
    serializeBinary(): Uint8Array {
        return this.serialize();
    }
    static override deserializeBinary(bytes: Uint8Array): GetBackupRequest {
        return GetBackupRequest.deserialize(bytes);
    }
}
export class ListBackupsRequest extends pb_1.Message {
    #one_of_decls: number[][] = [];
    constructor(data?: any[] | {
        parent?: string;
        filter?: string;
    }) {
        super();
        pb_1.Message.initialize(this, Array.isArray(data) ? data : [], 0, -1, [], this.#one_of_decls);
        if (!Array.isArray(data) && typeof data == "object") {
            if ("parent" in data && data.parent != undefined) {
                this.parent = data.parent;
            }
            if ("filter" in data && data.filter != undefined) {
                this.filter = data.filter;
            }
        }
    }
    get parent() {
        return pb_1.Message.getFieldWithDefault(this, 1, "") as string;
    }
    set parent(value: string) {
        pb_1.Message.setField(this, 1, value);
    }
    get filter() {
        return pb_1.Message.getFieldWithDefault(this, 2, "") as string;
    }
    set filter(value: string) {
        pb_1.Message.setField(this, 2, value);
    }
    static fromObject(data: {
        parent?: string;
        filter?: string;
    }): ListBackupsRequest {
        const message = new ListBackupsRequest({});
        if (data.parent != null) {
            message.parent = data.parent;
        }
        if (data.filter != null) {
            message.filter = data.filter;
        }
        return message;
    }
    toObject() {
        const data: {
            parent?: string;
            filter?: string;
        } = {};
        if (this.parent != null) {
            data.parent = this.parent;
        }
        if (this.filter != null) {
            data.filter = this.filter;
        }
        return data;
    }
    serialize(): Uint8Array;
    serialize(w: pb_1.BinaryWriter): void;
    serialize(w?: pb_1.BinaryWriter): Uint8Array | void {
        const writer = w || new pb_1.BinaryWriter();
        if (this.parent.length)
            writer.writeString(1, this.parent);
        if (this.filter.length)
            writer.writeString(2, this.filter);
        if (!w)
            return writer.getResultBuffer();
    }
    static deserialize(bytes: Uint8Array | pb_1.BinaryReader): ListBackupsRequest {
        const reader = bytes instanceof pb_1.BinaryReader ? bytes : new pb_1.BinaryReader(bytes), message = new ListBackupsRequest();
        while (reader.nextField()) {
            if (reader.isEndGroup())
                break;
            switch (reader.getFieldNumber()) {
                case 1:
                    message.parent = reader.readString();
                    break;
                case 2:
                    message.filter = reader.readString();
                    break;
                default: reader.skipField();
            }
        }
        return message;
    }
    serializeBinary(): Uint8Array {
        return this.serialize();
    }
    static override deserializeBinary(bytes: Uint8Array): ListBackupsRequest {
        return ListBackupsRequest.deserialize(bytes);
    }
}
export class ListBackupsResponse extends pb_1.Message {
    #one_of_decls: number[][] = [];
    constructor(data?: any[] | {
        backups?: dependency_5.Backup[];
        unreachable?: string[];
    }) {
        super();
        pb_1.Message.initialize(this, Array.isArray(data) ? data : [], 0, -1, [1, 3], this.#one_of_decls);
        if (!Array.isArray(data) && typeof data == "object") {
            if ("backups" in data && data.backups != undefined) {
                this.backups = data.backups;
            }
            if ("unreachable" in data && data.unreachable != undefined) {
                this.unreachable = data.unreachable;
            }
        }
    }
    get backups() {
        return pb_1.Message.getRepeatedWrapperField(this, dependency_5.Backup, 1) as dependency_5.Backup[];
    }
    set backups(value: dependency_5.Backup[]) {
        pb_1.Message.setRepeatedWrapperField(this, 1, value);
    }
    get unreachable() {
        return pb_1.Message.getFieldWithDefault(this, 3, []) as string[];
    }
    set unreachable(value: string[]) {
        pb_1.Message.setField(this, 3, value);
    }
    static fromObject(data: {
        backups?: ReturnType<typeof dependency_5.Backup.prototype.toObject>[];
        unreachable?: string[];
    }): ListBackupsResponse {
        const message = new ListBackupsResponse({});
        if (data.backups != null) {
            message.backups = data.backups.map(item => dependency_5.Backup.fromObject(item));
        }
        if (data.unreachable != null) {
            message.unreachable = data.unreachable;
        }
        return message;
    }
    toObject() {
        const data: {
            backups?: ReturnType<typeof dependency_5.Backup.prototype.toObject>[];
            unreachable?: string[];
        } = {};
        if (this.backups != null) {
            data.backups = this.backups.map((item: dependency_5.Backup) => item.toObject());
        }
        if (this.unreachable != null) {
            data.unreachable = this.unreachable;
        }
        return data;
    }
    serialize(): Uint8Array;
    serialize(w: pb_1.BinaryWriter): void;
    serialize(w?: pb_1.BinaryWriter): Uint8Array | void {
        const writer = w || new pb_1.BinaryWriter();
        if (this.backups.length)
            writer.writeRepeatedMessage(1, this.backups, (item: dependency_5.Backup) => item.serialize(writer));
        if (this.unreachable.length)
            writer.writeRepeatedString(3, this.unreachable);
        if (!w)
            return writer.getResultBuffer();
    }
    static deserialize(bytes: Uint8Array | pb_1.BinaryReader): ListBackupsResponse {
        const reader = bytes instanceof pb_1.BinaryReader ? bytes : new pb_1.BinaryReader(bytes), message = new ListBackupsResponse();
        while (reader.nextField()) {
            if (reader.isEndGroup())
                break;
            switch (reader.getFieldNumber()) {
                case 1:
                    reader.readMessage(message.backups, () => pb_1.Message.addToRepeatedWrapperField(message, 1, dependency_5.Backup.deserialize(reader), dependency_5.Backup));
                    break;
                case 3:
                    pb_1.Message.addToRepeatedField(message, 3, reader.readString());
                    break;
                default: reader.skipField();
            }
        }
        return message;
    }
    serializeBinary(): Uint8Array {
        return this.serialize();
    }
    static override deserializeBinary(bytes: Uint8Array): ListBackupsResponse {
        return ListBackupsResponse.deserialize(bytes);
    }
}
export class DeleteBackupRequest extends pb_1.Message {
    #one_of_decls: number[][] = [];
    constructor(data?: any[] | {
        name?: string;
    }) {
        super();
        pb_1.Message.initialize(this, Array.isArray(data) ? data : [], 0, -1, [], this.#one_of_decls);
        if (!Array.isArray(data) && typeof data == "object") {
            if ("name" in data && data.name != undefined) {
                this.name = data.name;
            }
        }
    }
    get name() {
        return pb_1.Message.getFieldWithDefault(this, 1, "") as string;
    }
    set name(value: string) {
        pb_1.Message.setField(this, 1, value);
    }
    static fromObject(data: {
        name?: string;
    }): DeleteBackupRequest {
        const message = new DeleteBackupRequest({});
        if (data.name != null) {
            message.name = data.name;
        }
        return message;
    }
    toObject() {
        const data: {
            name?: string;
        } = {};
        if (this.name != null) {
            data.name = this.name;
        }
        return data;
    }
    serialize(): Uint8Array;
    serialize(w: pb_1.BinaryWriter): void;
    serialize(w?: pb_1.BinaryWriter): Uint8Array | void {
        const writer = w || new pb_1.BinaryWriter();
        if (this.name.length)
            writer.writeString(1, this.name);
        if (!w)
            return writer.getResultBuffer();
    }
    static deserialize(bytes: Uint8Array | pb_1.BinaryReader): DeleteBackupRequest {
        const reader = bytes instanceof pb_1.BinaryReader ? bytes : new pb_1.BinaryReader(bytes), message = new DeleteBackupRequest();
        while (reader.nextField()) {
            if (reader.isEndGroup())
                break;
            switch (reader.getFieldNumber()) {
                case 1:
                    message.name = reader.readString();
                    break;
                default: reader.skipField();
            }
        }
        return message;
    }
    serializeBinary(): Uint8Array {
        return this.serialize();
    }
    static override deserializeBinary(bytes: Uint8Array): DeleteBackupRequest {
        return DeleteBackupRequest.deserialize(bytes);
    }
}
export class RestoreDatabaseRequest extends pb_1.Message {
    #one_of_decls: number[][] = [];
    constructor(data?: any[] | {
        parent?: string;
        database_id?: string;
        backup?: string;
        encryption_config?: dependency_6.DatabaseEncryptionConfig;
    }) {
        super();
        pb_1.Message.initialize(this, Array.isArray(data) ? data : [], 0, -1, [], this.#one_of_decls);
        if (!Array.isArray(data) && typeof data == "object") {
            if ("parent" in data && data.parent != undefined) {
                this.parent = data.parent;
            }
            if ("database_id" in data && data.database_id != undefined) {
                this.database_id = data.database_id;
            }
            if ("backup" in data && data.backup != undefined) {
                this.backup = data.backup;
            }
            if ("encryption_config" in data && data.encryption_config != undefined) {
                this.encryption_config = data.encryption_config;
            }
        }
    }
    get parent() {
        return pb_1.Message.getFieldWithDefault(this, 1, "") as string;
    }
    set parent(value: string) {
        pb_1.Message.setField(this, 1, value);
    }
    get database_id() {
        return pb_1.Message.getFieldWithDefault(this, 2, "") as string;
    }
    set database_id(value: string) {
        pb_1.Message.setField(this, 2, value);
    }
    get backup() {
        return pb_1.Message.getFieldWithDefault(this, 3, "") as string;
    }
    set backup(value: string) {
        pb_1.Message.setField(this, 3, value);
    }
    get encryption_config() {
        return pb_1.Message.getWrapperField(this, dependency_6.DatabaseEncryptionConfig, 9) as dependency_6.DatabaseEncryptionConfig;
    }
    set encryption_config(value: dependency_6.DatabaseEncryptionConfig) {
        pb_1.Message.setWrapperField(this, 9, value);
    }
    get has_encryption_config() {
        return pb_1.Message.getField(this, 9) != null;
    }
    static fromObject(data: {
        parent?: string;
        database_id?: string;
        backup?: string;
        encryption_config?: ReturnType<typeof dependency_6.DatabaseEncryptionConfig.prototype.toObject>;
    }): RestoreDatabaseRequest {
        const message = new RestoreDatabaseRequest({});
        if (data.parent != null) {
            message.parent = data.parent;
        }
        if (data.database_id != null) {
            message.database_id = data.database_id;
        }
        if (data.backup != null) {
            message.backup = data.backup;
        }
        if (data.encryption_config != null) {
            message.encryption_config = dependency_6.DatabaseEncryptionConfig.fromObject(data.encryption_config);
        }
        return message;
    }
    toObject() {
        const data: {
            parent?: string;
            database_id?: string;
            backup?: string;
            encryption_config?: ReturnType<typeof dependency_6.DatabaseEncryptionConfig.prototype.toObject>;
        } = {};
        if (this.parent != null) {
            data.parent = this.parent;
        }
        if (this.database_id != null) {
            data.database_id = this.database_id;
        }
        if (this.backup != null) {
            data.backup = this.backup;
        }
        if (this.encryption_config != null) {
            data.encryption_config = this.encryption_config.toObject();
        }
        return data;
    }
    serialize(): Uint8Array;
    serialize(w: pb_1.BinaryWriter): void;
    serialize(w?: pb_1.BinaryWriter): Uint8Array | void {
        const writer = w || new pb_1.BinaryWriter();
        if (this.parent.length)
            writer.writeString(1, this.parent);
        if (this.database_id.length)
            writer.writeString(2, this.database_id);
        if (this.backup.length)
            writer.writeString(3, this.backup);
        if (this.has_encryption_config)
            writer.writeMessage(9, this.encryption_config, () => this.encryption_config.serialize(writer));
        if (!w)
            return writer.getResultBuffer();
    }
    static deserialize(bytes: Uint8Array | pb_1.BinaryReader): RestoreDatabaseRequest {
        const reader = bytes instanceof pb_1.BinaryReader ? bytes : new pb_1.BinaryReader(bytes), message = new RestoreDatabaseRequest();
        while (reader.nextField()) {
            if (reader.isEndGroup())
                break;
            switch (reader.getFieldNumber()) {
                case 1:
                    message.parent = reader.readString();
                    break;
                case 2:
                    message.database_id = reader.readString();
                    break;
                case 3:
                    message.backup = reader.readString();
                    break;
                case 9:
                    reader.readMessage(message.encryption_config, () => message.encryption_config = dependency_6.DatabaseEncryptionConfig.deserialize(reader));
                    break;
                default: reader.skipField();
            }
        }
        return message;
    }
    serializeBinary(): Uint8Array {
        return this.serialize();
    }
    static override deserializeBinary(bytes: Uint8Array): RestoreDatabaseRequest {
        return RestoreDatabaseRequest.deserialize(bytes);
    }
}
interface GrpcUnaryServiceInterface<P, R> {
    (message: P, metadata: grpc_1.Metadata, options: grpc_1.CallOptions, callback: grpc_1.requestCallback<R>): grpc_1.ClientUnaryCall;
    (message: P, metadata: grpc_1.Metadata, callback: grpc_1.requestCallback<R>): grpc_1.ClientUnaryCall;
    (message: P, options: grpc_1.CallOptions, callback: grpc_1.requestCallback<R>): grpc_1.ClientUnaryCall;
    (message: P, callback: grpc_1.requestCallback<R>): grpc_1.ClientUnaryCall;
}
interface GrpcStreamServiceInterface<P, R> {
    (message: P, metadata: grpc_1.Metadata, options?: grpc_1.CallOptions): grpc_1.ClientReadableStream<R>;
    (message: P, options?: grpc_1.CallOptions): grpc_1.ClientReadableStream<R>;
}
interface GrpWritableServiceInterface<P, R> {
    (metadata: grpc_1.Metadata, options: grpc_1.CallOptions, callback: grpc_1.requestCallback<R>): grpc_1.ClientWritableStream<P>;
    (metadata: grpc_1.Metadata, callback: grpc_1.requestCallback<R>): grpc_1.ClientWritableStream<P>;
    (options: grpc_1.CallOptions, callback: grpc_1.requestCallback<R>): grpc_1.ClientWritableStream<P>;
    (callback: grpc_1.requestCallback<R>): grpc_1.ClientWritableStream<P>;
}
interface GrpcChunkServiceInterface<P, R> {
    (metadata: grpc_1.Metadata, options?: grpc_1.CallOptions): grpc_1.ClientDuplexStream<P, R>;
    (options?: grpc_1.CallOptions): grpc_1.ClientDuplexStream<P, R>;
}
interface GrpcPromiseServiceInterface<P, R> {
    (message: P, metadata: grpc_1.Metadata, options?: grpc_1.CallOptions): Promise<R>;
    (message: P, options?: grpc_1.CallOptions): Promise<R>;
}
export abstract class UnimplementedFirestoreAdminService {
    static definition = {
        CreateIndex: {
            path: "/google.firestore.admin.v1.FirestoreAdmin/CreateIndex",
            requestStream: false,
            responseStream: false,
            requestSerialize: (message: CreateIndexRequest) => Buffer.from(message.serialize()),
            requestDeserialize: (bytes: Buffer) => CreateIndexRequest.deserialize(new Uint8Array(bytes)),
            responseSerialize: (message: dependency_11.Operation) => Buffer.from(message.serialize()),
            responseDeserialize: (bytes: Buffer) => dependency_11.Operation.deserialize(new Uint8Array(bytes))
        },
        ListIndexes: {
            path: "/google.firestore.admin.v1.FirestoreAdmin/ListIndexes",
            requestStream: false,
            responseStream: false,
            requestSerialize: (message: ListIndexesRequest) => Buffer.from(message.serialize()),
            requestDeserialize: (bytes: Buffer) => ListIndexesRequest.deserialize(new Uint8Array(bytes)),
            responseSerialize: (message: ListIndexesResponse) => Buffer.from(message.serialize()),
            responseDeserialize: (bytes: Buffer) => ListIndexesResponse.deserialize(new Uint8Array(bytes))
        },
        GetIndex: {
            path: "/google.firestore.admin.v1.FirestoreAdmin/GetIndex",
            requestStream: false,
            responseStream: false,
            requestSerialize: (message: GetIndexRequest) => Buffer.from(message.serialize()),
            requestDeserialize: (bytes: Buffer) => GetIndexRequest.deserialize(new Uint8Array(bytes)),
            responseSerialize: (message: dependency_8.Index) => Buffer.from(message.serialize()),
            responseDeserialize: (bytes: Buffer) => dependency_8.Index.deserialize(new Uint8Array(bytes))
        },
        DeleteIndex: {
            path: "/google.firestore.admin.v1.FirestoreAdmin/DeleteIndex",
            requestStream: false,
            responseStream: false,
            requestSerialize: (message: DeleteIndexRequest) => Buffer.from(message.serialize()),
            requestDeserialize: (bytes: Buffer) => DeleteIndexRequest.deserialize(new Uint8Array(bytes)),
            responseSerialize: (message: dependency_12.Empty) => Buffer.from(message.serialize()),
            responseDeserialize: (bytes: Buffer) => dependency_12.Empty.deserialize(new Uint8Array(bytes))
        },
        GetField: {
            path: "/google.firestore.admin.v1.FirestoreAdmin/GetField",
            requestStream: false,
            responseStream: false,
            requestSerialize: (message: GetFieldRequest) => Buffer.from(message.serialize()),
            requestDeserialize: (bytes: Buffer) => GetFieldRequest.deserialize(new Uint8Array(bytes)),
            responseSerialize: (message: dependency_7.Field) => Buffer.from(message.serialize()),
            responseDeserialize: (bytes: Buffer) => dependency_7.Field.deserialize(new Uint8Array(bytes))
        },
        UpdateField: {
            path: "/google.firestore.admin.v1.FirestoreAdmin/UpdateField",
            requestStream: false,
            responseStream: false,
            requestSerialize: (message: UpdateFieldRequest) => Buffer.from(message.serialize()),
            requestDeserialize: (bytes: Buffer) => UpdateFieldRequest.deserialize(new Uint8Array(bytes)),
            responseSerialize: (message: dependency_11.Operation) => Buffer.from(message.serialize()),
            responseDeserialize: (bytes: Buffer) => dependency_11.Operation.deserialize(new Uint8Array(bytes))
        },
        ListFields: {
            path: "/google.firestore.admin.v1.FirestoreAdmin/ListFields",
            requestStream: false,
            responseStream: false,
            requestSerialize: (message: ListFieldsRequest) => Buffer.from(message.serialize()),
            requestDeserialize: (bytes: Buffer) => ListFieldsRequest.deserialize(new Uint8Array(bytes)),
            responseSerialize: (message: ListFieldsResponse) => Buffer.from(message.serialize()),
            responseDeserialize: (bytes: Buffer) => ListFieldsResponse.deserialize(new Uint8Array(bytes))
        },
        ExportDocuments: {
            path: "/google.firestore.admin.v1.FirestoreAdmin/ExportDocuments",
            requestStream: false,
            responseStream: false,
            requestSerialize: (message: ExportDocumentsRequest) => Buffer.from(message.serialize()),
            requestDeserialize: (bytes: Buffer) => ExportDocumentsRequest.deserialize(new Uint8Array(bytes)),
            responseSerialize: (message: dependency_11.Operation) => Buffer.from(message.serialize()),
            responseDeserialize: (bytes: Buffer) => dependency_11.Operation.deserialize(new Uint8Array(bytes))
        },
        ImportDocuments: {
            path: "/google.firestore.admin.v1.FirestoreAdmin/ImportDocuments",
            requestStream: false,
            responseStream: false,
            requestSerialize: (message: ImportDocumentsRequest) => Buffer.from(message.serialize()),
            requestDeserialize: (bytes: Buffer) => ImportDocumentsRequest.deserialize(new Uint8Array(bytes)),
            responseSerialize: (message: dependency_11.Operation) => Buffer.from(message.serialize()),
            responseDeserialize: (bytes: Buffer) => dependency_11.Operation.deserialize(new Uint8Array(bytes))
        },
        BulkDeleteDocuments: {
            path: "/google.firestore.admin.v1.FirestoreAdmin/BulkDeleteDocuments",
            requestStream: false,
            responseStream: false,
            requestSerialize: (message: BulkDeleteDocumentsRequest) => Buffer.from(message.serialize()),
            requestDeserialize: (bytes: Buffer) => BulkDeleteDocumentsRequest.deserialize(new Uint8Array(bytes)),
            responseSerialize: (message: dependency_11.Operation) => Buffer.from(message.serialize()),
            responseDeserialize: (bytes: Buffer) => dependency_11.Operation.deserialize(new Uint8Array(bytes))
        },
        CreateDatabase: {
            path: "/google.firestore.admin.v1.FirestoreAdmin/CreateDatabase",
            requestStream: false,
            responseStream: false,
            requestSerialize: (message: CreateDatabaseRequest) => Buffer.from(message.serialize()),
            requestDeserialize: (bytes: Buffer) => CreateDatabaseRequest.deserialize(new Uint8Array(bytes)),
            responseSerialize: (message: dependency_11.Operation) => Buffer.from(message.serialize()),
            responseDeserialize: (bytes: Buffer) => dependency_11.Operation.deserialize(new Uint8Array(bytes))
        },
        GetDatabase: {
            path: "/google.firestore.admin.v1.FirestoreAdmin/GetDatabase",
            requestStream: false,
            responseStream: false,
            requestSerialize: (message: GetDatabaseRequest) => Buffer.from(message.serialize()),
            requestDeserialize: (bytes: Buffer) => GetDatabaseRequest.deserialize(new Uint8Array(bytes)),
            responseSerialize: (message: dependency_6.Database) => Buffer.from(message.serialize()),
            responseDeserialize: (bytes: Buffer) => dependency_6.Database.deserialize(new Uint8Array(bytes))
        },
        ListDatabases: {
            path: "/google.firestore.admin.v1.FirestoreAdmin/ListDatabases",
            requestStream: false,
            responseStream: false,
            requestSerialize: (message: ListDatabasesRequest) => Buffer.from(message.serialize()),
            requestDeserialize: (bytes: Buffer) => ListDatabasesRequest.deserialize(new Uint8Array(bytes)),
            responseSerialize: (message: ListDatabasesResponse) => Buffer.from(message.serialize()),
            responseDeserialize: (bytes: Buffer) => ListDatabasesResponse.deserialize(new Uint8Array(bytes))
        },
        UpdateDatabase: {
            path: "/google.firestore.admin.v1.FirestoreAdmin/UpdateDatabase",
            requestStream: false,
            responseStream: false,
            requestSerialize: (message: UpdateDatabaseRequest) => Buffer.from(message.serialize()),
            requestDeserialize: (bytes: Buffer) => UpdateDatabaseRequest.deserialize(new Uint8Array(bytes)),
            responseSerialize: (message: dependency_11.Operation) => Buffer.from(message.serialize()),
            responseDeserialize: (bytes: Buffer) => dependency_11.Operation.deserialize(new Uint8Array(bytes))
        },
        DeleteDatabase: {
            path: "/google.firestore.admin.v1.FirestoreAdmin/DeleteDatabase",
            requestStream: false,
            responseStream: false,
            requestSerialize: (message: DeleteDatabaseRequest) => Buffer.from(message.serialize()),
            requestDeserialize: (bytes: Buffer) => DeleteDatabaseRequest.deserialize(new Uint8Array(bytes)),
            responseSerialize: (message: dependency_11.Operation) => Buffer.from(message.serialize()),
            responseDeserialize: (bytes: Buffer) => dependency_11.Operation.deserialize(new Uint8Array(bytes))
        },
        GetBackup: {
            path: "/google.firestore.admin.v1.FirestoreAdmin/GetBackup",
            requestStream: false,
            responseStream: false,
            requestSerialize: (message: GetBackupRequest) => Buffer.from(message.serialize()),
            requestDeserialize: (bytes: Buffer) => GetBackupRequest.deserialize(new Uint8Array(bytes)),
            responseSerialize: (message: dependency_5.Backup) => Buffer.from(message.serialize()),
            responseDeserialize: (bytes: Buffer) => dependency_5.Backup.deserialize(new Uint8Array(bytes))
        },
        ListBackups: {
            path: "/google.firestore.admin.v1.FirestoreAdmin/ListBackups",
            requestStream: false,
            responseStream: false,
            requestSerialize: (message: ListBackupsRequest) => Buffer.from(message.serialize()),
            requestDeserialize: (bytes: Buffer) => ListBackupsRequest.deserialize(new Uint8Array(bytes)),
            responseSerialize: (message: ListBackupsResponse) => Buffer.from(message.serialize()),
            responseDeserialize: (bytes: Buffer) => ListBackupsResponse.deserialize(new Uint8Array(bytes))
        },
        DeleteBackup: {
            path: "/google.firestore.admin.v1.FirestoreAdmin/DeleteBackup",
            requestStream: false,
            responseStream: false,
            requestSerialize: (message: DeleteBackupRequest) => Buffer.from(message.serialize()),
            requestDeserialize: (bytes: Buffer) => DeleteBackupRequest.deserialize(new Uint8Array(bytes)),
            responseSerialize: (message: dependency_12.Empty) => Buffer.from(message.serialize()),
            responseDeserialize: (bytes: Buffer) => dependency_12.Empty.deserialize(new Uint8Array(bytes))
        },
        RestoreDatabase: {
            path: "/google.firestore.admin.v1.FirestoreAdmin/RestoreDatabase",
            requestStream: false,
            responseStream: false,
            requestSerialize: (message: RestoreDatabaseRequest) => Buffer.from(message.serialize()),
            requestDeserialize: (bytes: Buffer) => RestoreDatabaseRequest.deserialize(new Uint8Array(bytes)),
            responseSerialize: (message: dependency_11.Operation) => Buffer.from(message.serialize()),
            responseDeserialize: (bytes: Buffer) => dependency_11.Operation.deserialize(new Uint8Array(bytes))
        },
        CreateBackupSchedule: {
            path: "/google.firestore.admin.v1.FirestoreAdmin/CreateBackupSchedule",
            requestStream: false,
            responseStream: false,
            requestSerialize: (message: CreateBackupScheduleRequest) => Buffer.from(message.serialize()),
            requestDeserialize: (bytes: Buffer) => CreateBackupScheduleRequest.deserialize(new Uint8Array(bytes)),
            responseSerialize: (message: dependency_10.BackupSchedule) => Buffer.from(message.serialize()),
            responseDeserialize: (bytes: Buffer) => dependency_10.BackupSchedule.deserialize(new Uint8Array(bytes))
        },
        GetBackupSchedule: {
            path: "/google.firestore.admin.v1.FirestoreAdmin/GetBackupSchedule",
            requestStream: false,
            responseStream: false,
            requestSerialize: (message: GetBackupScheduleRequest) => Buffer.from(message.serialize()),
            requestDeserialize: (bytes: Buffer) => GetBackupScheduleRequest.deserialize(new Uint8Array(bytes)),
            responseSerialize: (message: dependency_10.BackupSchedule) => Buffer.from(message.serialize()),
            responseDeserialize: (bytes: Buffer) => dependency_10.BackupSchedule.deserialize(new Uint8Array(bytes))
        },
        ListBackupSchedules: {
            path: "/google.firestore.admin.v1.FirestoreAdmin/ListBackupSchedules",
            requestStream: false,
            responseStream: false,
            requestSerialize: (message: ListBackupSchedulesRequest) => Buffer.from(message.serialize()),
            requestDeserialize: (bytes: Buffer) => ListBackupSchedulesRequest.deserialize(new Uint8Array(bytes)),
            responseSerialize: (message: ListBackupSchedulesResponse) => Buffer.from(message.serialize()),
            responseDeserialize: (bytes: Buffer) => ListBackupSchedulesResponse.deserialize(new Uint8Array(bytes))
        },
        UpdateBackupSchedule: {
            path: "/google.firestore.admin.v1.FirestoreAdmin/UpdateBackupSchedule",
            requestStream: false,
            responseStream: false,
            requestSerialize: (message: UpdateBackupScheduleRequest) => Buffer.from(message.serialize()),
            requestDeserialize: (bytes: Buffer) => UpdateBackupScheduleRequest.deserialize(new Uint8Array(bytes)),
            responseSerialize: (message: dependency_10.BackupSchedule) => Buffer.from(message.serialize()),
            responseDeserialize: (bytes: Buffer) => dependency_10.BackupSchedule.deserialize(new Uint8Array(bytes))
        },
        DeleteBackupSchedule: {
            path: "/google.firestore.admin.v1.FirestoreAdmin/DeleteBackupSchedule",
            requestStream: false,
            responseStream: false,
            requestSerialize: (message: DeleteBackupScheduleRequest) => Buffer.from(message.serialize()),
            requestDeserialize: (bytes: Buffer) => DeleteBackupScheduleRequest.deserialize(new Uint8Array(bytes)),
            responseSerialize: (message: dependency_12.Empty) => Buffer.from(message.serialize()),
            responseDeserialize: (bytes: Buffer) => dependency_12.Empty.deserialize(new Uint8Array(bytes))
        }
    };
    [method: string]: grpc_1.UntypedHandleCall;
    abstract CreateIndex(call: grpc_1.ServerUnaryCall<CreateIndexRequest, dependency_11.Operation>, callback: grpc_1.sendUnaryData<dependency_11.Operation>): void;
    abstract ListIndexes(call: grpc_1.ServerUnaryCall<ListIndexesRequest, ListIndexesResponse>, callback: grpc_1.sendUnaryData<ListIndexesResponse>): void;
    abstract GetIndex(call: grpc_1.ServerUnaryCall<GetIndexRequest, dependency_8.Index>, callback: grpc_1.sendUnaryData<dependency_8.Index>): void;
    abstract DeleteIndex(call: grpc_1.ServerUnaryCall<DeleteIndexRequest, dependency_12.Empty>, callback: grpc_1.sendUnaryData<dependency_12.Empty>): void;
    abstract GetField(call: grpc_1.ServerUnaryCall<GetFieldRequest, dependency_7.Field>, callback: grpc_1.sendUnaryData<dependency_7.Field>): void;
    abstract UpdateField(call: grpc_1.ServerUnaryCall<UpdateFieldRequest, dependency_11.Operation>, callback: grpc_1.sendUnaryData<dependency_11.Operation>): void;
    abstract ListFields(call: grpc_1.ServerUnaryCall<ListFieldsRequest, ListFieldsResponse>, callback: grpc_1.sendUnaryData<ListFieldsResponse>): void;
    abstract ExportDocuments(call: grpc_1.ServerUnaryCall<ExportDocumentsRequest, dependency_11.Operation>, callback: grpc_1.sendUnaryData<dependency_11.Operation>): void;
    abstract ImportDocuments(call: grpc_1.ServerUnaryCall<ImportDocumentsRequest, dependency_11.Operation>, callback: grpc_1.sendUnaryData<dependency_11.Operation>): void;
    abstract BulkDeleteDocuments(call: grpc_1.ServerUnaryCall<BulkDeleteDocumentsRequest, dependency_11.Operation>, callback: grpc_1.sendUnaryData<dependency_11.Operation>): void;
    abstract CreateDatabase(call: grpc_1.ServerUnaryCall<CreateDatabaseRequest, dependency_11.Operation>, callback: grpc_1.sendUnaryData<dependency_11.Operation>): void;
    abstract GetDatabase(call: grpc_1.ServerUnaryCall<GetDatabaseRequest, dependency_6.Database>, callback: grpc_1.sendUnaryData<dependency_6.Database>): void;
    abstract ListDatabases(call: grpc_1.ServerUnaryCall<ListDatabasesRequest, ListDatabasesResponse>, callback: grpc_1.sendUnaryData<ListDatabasesResponse>): void;
    abstract UpdateDatabase(call: grpc_1.ServerUnaryCall<UpdateDatabaseRequest, dependency_11.Operation>, callback: grpc_1.sendUnaryData<dependency_11.Operation>): void;
    abstract DeleteDatabase(call: grpc_1.ServerUnaryCall<DeleteDatabaseRequest, dependency_11.Operation>, callback: grpc_1.sendUnaryData<dependency_11.Operation>): void;
    abstract GetBackup(call: grpc_1.ServerUnaryCall<GetBackupRequest, dependency_5.Backup>, callback: grpc_1.sendUnaryData<dependency_5.Backup>): void;
    abstract ListBackups(call: grpc_1.ServerUnaryCall<ListBackupsRequest, ListBackupsResponse>, callback: grpc_1.sendUnaryData<ListBackupsResponse>): void;
    abstract DeleteBackup(call: grpc_1.ServerUnaryCall<DeleteBackupRequest, dependency_12.Empty>, callback: grpc_1.sendUnaryData<dependency_12.Empty>): void;
    abstract RestoreDatabase(call: grpc_1.ServerUnaryCall<RestoreDatabaseRequest, dependency_11.Operation>, callback: grpc_1.sendUnaryData<dependency_11.Operation>): void;
    abstract CreateBackupSchedule(call: grpc_1.ServerUnaryCall<CreateBackupScheduleRequest, dependency_10.BackupSchedule>, callback: grpc_1.sendUnaryData<dependency_10.BackupSchedule>): void;
    abstract GetBackupSchedule(call: grpc_1.ServerUnaryCall<GetBackupScheduleRequest, dependency_10.BackupSchedule>, callback: grpc_1.sendUnaryData<dependency_10.BackupSchedule>): void;
    abstract ListBackupSchedules(call: grpc_1.ServerUnaryCall<ListBackupSchedulesRequest, ListBackupSchedulesResponse>, callback: grpc_1.sendUnaryData<ListBackupSchedulesResponse>): void;
    abstract UpdateBackupSchedule(call: grpc_1.ServerUnaryCall<UpdateBackupScheduleRequest, dependency_10.BackupSchedule>, callback: grpc_1.sendUnaryData<dependency_10.BackupSchedule>): void;
    abstract DeleteBackupSchedule(call: grpc_1.ServerUnaryCall<DeleteBackupScheduleRequest, dependency_12.Empty>, callback: grpc_1.sendUnaryData<dependency_12.Empty>): void;
}
export class FirestoreAdminClient extends grpc_1.makeGenericClientConstructor(UnimplementedFirestoreAdminService.definition, "FirestoreAdmin", {}) {
    constructor(address: string, credentials: grpc_1.ChannelCredentials, options?: Partial<grpc_1.ChannelOptions>) {
        super(address, credentials, options);
    }
    CreateIndex: GrpcUnaryServiceInterface<CreateIndexRequest, dependency_11.Operation> = (message: CreateIndexRequest, metadata: grpc_1.Metadata | grpc_1.CallOptions | grpc_1.requestCallback<dependency_11.Operation>, options?: grpc_1.CallOptions | grpc_1.requestCallback<dependency_11.Operation>, callback?: grpc_1.requestCallback<dependency_11.Operation>): grpc_1.ClientUnaryCall => {
        return super.CreateIndex(message, metadata, options, callback);
    };
    ListIndexes: GrpcUnaryServiceInterface<ListIndexesRequest, ListIndexesResponse> = (message: ListIndexesRequest, metadata: grpc_1.Metadata | grpc_1.CallOptions | grpc_1.requestCallback<ListIndexesResponse>, options?: grpc_1.CallOptions | grpc_1.requestCallback<ListIndexesResponse>, callback?: grpc_1.requestCallback<ListIndexesResponse>): grpc_1.ClientUnaryCall => {
        return super.ListIndexes(message, metadata, options, callback);
    };
    GetIndex: GrpcUnaryServiceInterface<GetIndexRequest, dependency_8.Index> = (message: GetIndexRequest, metadata: grpc_1.Metadata | grpc_1.CallOptions | grpc_1.requestCallback<dependency_8.Index>, options?: grpc_1.CallOptions | grpc_1.requestCallback<dependency_8.Index>, callback?: grpc_1.requestCallback<dependency_8.Index>): grpc_1.ClientUnaryCall => {
        return super.GetIndex(message, metadata, options, callback);
    };
    DeleteIndex: GrpcUnaryServiceInterface<DeleteIndexRequest, dependency_12.Empty> = (message: DeleteIndexRequest, metadata: grpc_1.Metadata | grpc_1.CallOptions | grpc_1.requestCallback<dependency_12.Empty>, options?: grpc_1.CallOptions | grpc_1.requestCallback<dependency_12.Empty>, callback?: grpc_1.requestCallback<dependency_12.Empty>): grpc_1.ClientUnaryCall => {
        return super.DeleteIndex(message, metadata, options, callback);
    };
    GetField: GrpcUnaryServiceInterface<GetFieldRequest, dependency_7.Field> = (message: GetFieldRequest, metadata: grpc_1.Metadata | grpc_1.CallOptions | grpc_1.requestCallback<dependency_7.Field>, options?: grpc_1.CallOptions | grpc_1.requestCallback<dependency_7.Field>, callback?: grpc_1.requestCallback<dependency_7.Field>): grpc_1.ClientUnaryCall => {
        return super.GetField(message, metadata, options, callback);
    };
    UpdateField: GrpcUnaryServiceInterface<UpdateFieldRequest, dependency_11.Operation> = (message: UpdateFieldRequest, metadata: grpc_1.Metadata | grpc_1.CallOptions | grpc_1.requestCallback<dependency_11.Operation>, options?: grpc_1.CallOptions | grpc_1.requestCallback<dependency_11.Operation>, callback?: grpc_1.requestCallback<dependency_11.Operation>): grpc_1.ClientUnaryCall => {
        return super.UpdateField(message, metadata, options, callback);
    };
    ListFields: GrpcUnaryServiceInterface<ListFieldsRequest, ListFieldsResponse> = (message: ListFieldsRequest, metadata: grpc_1.Metadata | grpc_1.CallOptions | grpc_1.requestCallback<ListFieldsResponse>, options?: grpc_1.CallOptions | grpc_1.requestCallback<ListFieldsResponse>, callback?: grpc_1.requestCallback<ListFieldsResponse>): grpc_1.ClientUnaryCall => {
        return super.ListFields(message, metadata, options, callback);
    };
    ExportDocuments: GrpcUnaryServiceInterface<ExportDocumentsRequest, dependency_11.Operation> = (message: ExportDocumentsRequest, metadata: grpc_1.Metadata | grpc_1.CallOptions | grpc_1.requestCallback<dependency_11.Operation>, options?: grpc_1.CallOptions | grpc_1.requestCallback<dependency_11.Operation>, callback?: grpc_1.requestCallback<dependency_11.Operation>): grpc_1.ClientUnaryCall => {
        return super.ExportDocuments(message, metadata, options, callback);
    };
    ImportDocuments: GrpcUnaryServiceInterface<ImportDocumentsRequest, dependency_11.Operation> = (message: ImportDocumentsRequest, metadata: grpc_1.Metadata | grpc_1.CallOptions | grpc_1.requestCallback<dependency_11.Operation>, options?: grpc_1.CallOptions | grpc_1.requestCallback<dependency_11.Operation>, callback?: grpc_1.requestCallback<dependency_11.Operation>): grpc_1.ClientUnaryCall => {
        return super.ImportDocuments(message, metadata, options, callback);
    };
    BulkDeleteDocuments: GrpcUnaryServiceInterface<BulkDeleteDocumentsRequest, dependency_11.Operation> = (message: BulkDeleteDocumentsRequest, metadata: grpc_1.Metadata | grpc_1.CallOptions | grpc_1.requestCallback<dependency_11.Operation>, options?: grpc_1.CallOptions | grpc_1.requestCallback<dependency_11.Operation>, callback?: grpc_1.requestCallback<dependency_11.Operation>): grpc_1.ClientUnaryCall => {
        return super.BulkDeleteDocuments(message, metadata, options, callback);
    };
    CreateDatabase: GrpcUnaryServiceInterface<CreateDatabaseRequest, dependency_11.Operation> = (message: CreateDatabaseRequest, metadata: grpc_1.Metadata | grpc_1.CallOptions | grpc_1.requestCallback<dependency_11.Operation>, options?: grpc_1.CallOptions | grpc_1.requestCallback<dependency_11.Operation>, callback?: grpc_1.requestCallback<dependency_11.Operation>): grpc_1.ClientUnaryCall => {
        return super.CreateDatabase(message, metadata, options, callback);
    };
    GetDatabase: GrpcUnaryServiceInterface<GetDatabaseRequest, dependency_6.Database> = (message: GetDatabaseRequest, metadata: grpc_1.Metadata | grpc_1.CallOptions | grpc_1.requestCallback<dependency_6.Database>, options?: grpc_1.CallOptions | grpc_1.requestCallback<dependency_6.Database>, callback?: grpc_1.requestCallback<dependency_6.Database>): grpc_1.ClientUnaryCall => {
        return super.GetDatabase(message, metadata, options, callback);
    };
    ListDatabases: GrpcUnaryServiceInterface<ListDatabasesRequest, ListDatabasesResponse> = (message: ListDatabasesRequest, metadata: grpc_1.Metadata | grpc_1.CallOptions | grpc_1.requestCallback<ListDatabasesResponse>, options?: grpc_1.CallOptions | grpc_1.requestCallback<ListDatabasesResponse>, callback?: grpc_1.requestCallback<ListDatabasesResponse>): grpc_1.ClientUnaryCall => {
        return super.ListDatabases(message, metadata, options, callback);
    };
    UpdateDatabase: GrpcUnaryServiceInterface<UpdateDatabaseRequest, dependency_11.Operation> = (message: UpdateDatabaseRequest, metadata: grpc_1.Metadata | grpc_1.CallOptions | grpc_1.requestCallback<dependency_11.Operation>, options?: grpc_1.CallOptions | grpc_1.requestCallback<dependency_11.Operation>, callback?: grpc_1.requestCallback<dependency_11.Operation>): grpc_1.ClientUnaryCall => {
        return super.UpdateDatabase(message, metadata, options, callback);
    };
    DeleteDatabase: GrpcUnaryServiceInterface<DeleteDatabaseRequest, dependency_11.Operation> = (message: DeleteDatabaseRequest, metadata: grpc_1.Metadata | grpc_1.CallOptions | grpc_1.requestCallback<dependency_11.Operation>, options?: grpc_1.CallOptions | grpc_1.requestCallback<dependency_11.Operation>, callback?: grpc_1.requestCallback<dependency_11.Operation>): grpc_1.ClientUnaryCall => {
        return super.DeleteDatabase(message, metadata, options, callback);
    };
    GetBackup: GrpcUnaryServiceInterface<GetBackupRequest, dependency_5.Backup> = (message: GetBackupRequest, metadata: grpc_1.Metadata | grpc_1.CallOptions | grpc_1.requestCallback<dependency_5.Backup>, options?: grpc_1.CallOptions | grpc_1.requestCallback<dependency_5.Backup>, callback?: grpc_1.requestCallback<dependency_5.Backup>): grpc_1.ClientUnaryCall => {
        return super.GetBackup(message, metadata, options, callback);
    };
    ListBackups: GrpcUnaryServiceInterface<ListBackupsRequest, ListBackupsResponse> = (message: ListBackupsRequest, metadata: grpc_1.Metadata | grpc_1.CallOptions | grpc_1.requestCallback<ListBackupsResponse>, options?: grpc_1.CallOptions | grpc_1.requestCallback<ListBackupsResponse>, callback?: grpc_1.requestCallback<ListBackupsResponse>): grpc_1.ClientUnaryCall => {
        return super.ListBackups(message, metadata, options, callback);
    };
    DeleteBackup: GrpcUnaryServiceInterface<DeleteBackupRequest, dependency_12.Empty> = (message: DeleteBackupRequest, metadata: grpc_1.Metadata | grpc_1.CallOptions | grpc_1.requestCallback<dependency_12.Empty>, options?: grpc_1.CallOptions | grpc_1.requestCallback<dependency_12.Empty>, callback?: grpc_1.requestCallback<dependency_12.Empty>): grpc_1.ClientUnaryCall => {
        return super.DeleteBackup(message, metadata, options, callback);
    };
    RestoreDatabase: GrpcUnaryServiceInterface<RestoreDatabaseRequest, dependency_11.Operation> = (message: RestoreDatabaseRequest, metadata: grpc_1.Metadata | grpc_1.CallOptions | grpc_1.requestCallback<dependency_11.Operation>, options?: grpc_1.CallOptions | grpc_1.requestCallback<dependency_11.Operation>, callback?: grpc_1.requestCallback<dependency_11.Operation>): grpc_1.ClientUnaryCall => {
        return super.RestoreDatabase(message, metadata, options, callback);
    };
    CreateBackupSchedule: GrpcUnaryServiceInterface<CreateBackupScheduleRequest, dependency_10.BackupSchedule> = (message: CreateBackupScheduleRequest, metadata: grpc_1.Metadata | grpc_1.CallOptions | grpc_1.requestCallback<dependency_10.BackupSchedule>, options?: grpc_1.CallOptions | grpc_1.requestCallback<dependency_10.BackupSchedule>, callback?: grpc_1.requestCallback<dependency_10.BackupSchedule>): grpc_1.ClientUnaryCall => {
        return super.CreateBackupSchedule(message, metadata, options, callback);
    };
    GetBackupSchedule: GrpcUnaryServiceInterface<GetBackupScheduleRequest, dependency_10.BackupSchedule> = (message: GetBackupScheduleRequest, metadata: grpc_1.Metadata | grpc_1.CallOptions | grpc_1.requestCallback<dependency_10.BackupSchedule>, options?: grpc_1.CallOptions | grpc_1.requestCallback<dependency_10.BackupSchedule>, callback?: grpc_1.requestCallback<dependency_10.BackupSchedule>): grpc_1.ClientUnaryCall => {
        return super.GetBackupSchedule(message, metadata, options, callback);
    };
    ListBackupSchedules: GrpcUnaryServiceInterface<ListBackupSchedulesRequest, ListBackupSchedulesResponse> = (message: ListBackupSchedulesRequest, metadata: grpc_1.Metadata | grpc_1.CallOptions | grpc_1.requestCallback<ListBackupSchedulesResponse>, options?: grpc_1.CallOptions | grpc_1.requestCallback<ListBackupSchedulesResponse>, callback?: grpc_1.requestCallback<ListBackupSchedulesResponse>): grpc_1.ClientUnaryCall => {
        return super.ListBackupSchedules(message, metadata, options, callback);
    };
    UpdateBackupSchedule: GrpcUnaryServiceInterface<UpdateBackupScheduleRequest, dependency_10.BackupSchedule> = (message: UpdateBackupScheduleRequest, metadata: grpc_1.Metadata | grpc_1.CallOptions | grpc_1.requestCallback<dependency_10.BackupSchedule>, options?: grpc_1.CallOptions | grpc_1.requestCallback<dependency_10.BackupSchedule>, callback?: grpc_1.requestCallback<dependency_10.BackupSchedule>): grpc_1.ClientUnaryCall => {
        return super.UpdateBackupSchedule(message, metadata, options, callback);
    };
    DeleteBackupSchedule: GrpcUnaryServiceInterface<DeleteBackupScheduleRequest, dependency_12.Empty> = (message: DeleteBackupScheduleRequest, metadata: grpc_1.Metadata | grpc_1.CallOptions | grpc_1.requestCallback<dependency_12.Empty>, options?: grpc_1.CallOptions | grpc_1.requestCallback<dependency_12.Empty>, callback?: grpc_1.requestCallback<dependency_12.Empty>): grpc_1.ClientUnaryCall => {
        return super.DeleteBackupSchedule(message, metadata, options, callback);
    };
}
