// @generated by protobuf-ts 2.9.6
// @generated from protobuf file "partnerApp.proto" (package "api", syntax proto3)
// tslint:disable
import { ServiceType } from "@protobuf-ts/runtime-rpc";
import type { BinaryWriteOptions } from "@protobuf-ts/runtime";
import type { IBinaryWriter } from "@protobuf-ts/runtime";
import { WireType } from "@protobuf-ts/runtime";
import type { BinaryReadOptions } from "@protobuf-ts/runtime";
import type { IBinaryReader } from "@protobuf-ts/runtime";
import { UnknownFieldHandler } from "@protobuf-ts/runtime";
import type { PartialMessage } from "@protobuf-ts/runtime";
import { reflectionMergePartial } from "@protobuf-ts/runtime";
import { MessageType } from "@protobuf-ts/runtime";
import { WorkflowExecutionResult } from "./shared";
import { Paging } from "./base";
import { RequestPartnerAppHeader } from "./shared";
import { StorageEndpoint } from "./shared";
import { OpenSearchCredentials } from "./shared";
import { NatsCredentials } from "./shared";
import { OpenIDCredentials } from "./shared";
import { IntegrationEndpoint } from "./shared";
import { CoreEndpoint } from "./shared";
import { RequestProjectHeader } from "./shared";
/**
 * @generated from protobuf message api.PartnerApp
 */
export interface PartnerApp {
    /**
     * @generated from protobuf field: string ID = 1 [json_name = "ID"];
     */
    iD: string;
    /**
     * @generated from protobuf field: string Name = 2 [json_name = "Name"];
     */
    name: string;
    /**
     * @generated from protobuf field: string Description = 3 [json_name = "Description"];
     */
    description: string;
    /**
     * @generated from protobuf field: string BucketPath = 4 [json_name = "BucketPath"];
     */
    bucketPath: string;
    /**
     * @generated from protobuf field: string NatsRootSubject = 5 [json_name = "NatsRootSubject"];
     */
    natsRootSubject: string;
    /**
     * @generated from protobuf field: string ProjectID = 6 [json_name = "ProjectID"];
     */
    projectID: string;
    /**
     * @generated from protobuf field: string OrganisationID = 7 [json_name = "OrganisationID"];
     */
    organisationID: string;
    /**
     * @generated from protobuf field: string NatsServer = 8 [json_name = "NatsServer"];
     */
    natsServer: string;
}
/**
 * @generated from protobuf message api.CreatePartnerAppRequest
 */
export interface CreatePartnerAppRequest {
    /**
     * @generated from protobuf field: api.RequestProjectHeader Header = 1 [json_name = "Header"];
     */
    header?: RequestProjectHeader;
    /**
     * @generated from protobuf field: string Name = 2 [json_name = "Name"];
     */
    name: string;
    /**
     * @generated from protobuf field: string Description = 3 [json_name = "Description"];
     */
    description: string;
}
/**
 * CreatePartnerAppResult contains all the informations necessary for communication between a partner app and Platform
 *
 * @generated from protobuf message api.CreatePartnerAppResult
 */
export interface CreatePartnerAppResult {
    /**
     * Version of this definition of data.
     * This number will increment with additions of new fields.
     * In this message of any sub-message of it.
     * Any implementation MUST ignore unknown fields,
     * Any implementation MAY reject versions that are posterior to their implementation,
     * Any implementation MUST accept any and all previous versions of this message definition.
     * new fields introcuced in any version MUST NOT be mandatory.
     *
     * @generated from protobuf field: int32 Version = 1 [json_name = "Version"];
     */
    version: number;
    /**
     * Unique identifiers for the organisation & the project the partnerapp belongs to.
     * This identifier is guaranteed unique across all organisations/projects.
     * Empty string MUST raise an error and forbid registering the settings.
     *
     * @generated from protobuf field: string OrganisationID = 2 [json_name = "OrganisationID"];
     */
    organisationID: string;
    /**
     * @generated from protobuf field: string ProjectID = 3 [json_name = "ProjectID"];
     */
    projectID: string;
    /**
     * Unique identifier for the partner app.
     * This identifier is guaranteed unique across all organisations/projects/partnerapps.
     * This ID is suitable for updating credential and access options without any content check.
     * Empty string MUST raise an error and forbid registering the settings.
     *
     * @generated from protobuf field: string PartnerAppID = 4 [json_name = "PartnerAppID"];
     */
    partnerAppID: string;
    /**
     * @generated from protobuf field: string PartnerAppJWT = 11 [json_name = "PartnerAppJWT"];
     */
    partnerAppJWT: string; // JWT for this partner app holding the partner app ID, the project ID and the organisation ID. This JWT is signed by the platform.
    /**
     * @generated from protobuf field: api.CoreEndpoint Core = 5 [json_name = "Core"];
     */
    core?: CoreEndpoint; // How to connect to the REST webservices of Reflex Platform (with JWT auth)
    /**
     * @generated from protobuf field: api.IntegrationEndpoint Integration = 6 [json_name = "Integration"];
     */
    integration?: IntegrationEndpoint; // How to connect to the REST webservices Integration Platform (with JWT auth)
    /**
     * @generated from protobuf field: api.OpenIDCredentials OpenID = 7 [json_name = "OpenID"];
     */
    openID?: OpenIDCredentials; // Platform OpenID Connect server configuration and credentials
    /**
     * @generated from protobuf field: api.NatsCredentials Nats = 8 [json_name = "Nats"];
     */
    nats?: NatsCredentials; // connecting to the NATS endpoint (with decentralized JWT auth)
    /**
     * @generated from protobuf field: api.OpenSearchCredentials OpenDistro = 9 [json_name = "OpenDistro"];
     */
    openDistro?: OpenSearchCredentials; // connecting to the OpenSearch endpoint (with basic auth)
    /**
     * @generated from protobuf field: api.StorageEndpoint Storage = 10 [json_name = "Storage"];
     */
    storage?: StorageEndpoint; // connecting to the Google Cloud Storage endpoint (with STS auth)
}
/**
 * @generated from protobuf message api.UpdatePartnerAppRequest
 */
export interface UpdatePartnerAppRequest {
    /**
     * @generated from protobuf field: api.RequestProjectHeader Header = 1 [json_name = "Header"];
     */
    header?: RequestProjectHeader;
    /**
     * @generated from protobuf field: string ID = 2 [json_name = "ID"];
     */
    iD: string;
    /**
     * @generated from protobuf field: string Name = 3 [json_name = "Name"];
     */
    name: string;
    /**
     * @generated from protobuf field: string Description = 4 [json_name = "Description"];
     */
    description: string;
}
/**
 * @generated from protobuf message api.UpdatePartnerAppResult
 */
export interface UpdatePartnerAppResult {
    /**
     * @generated from protobuf field: api.PartnerApp Result = 1 [json_name = "Result"];
     */
    result?: PartnerApp;
}
/**
 * @generated from protobuf message api.GetPartnerAppRequest
 */
export interface GetPartnerAppRequest {
    /**
     * @generated from protobuf field: api.RequestPartnerAppHeader Header = 1 [json_name = "Header"];
     */
    header?: RequestPartnerAppHeader;
}
/**
 * @generated from protobuf message api.GetPartnerAppResult
 */
export interface GetPartnerAppResult {
    /**
     * @generated from protobuf field: api.PartnerApp Result = 1 [json_name = "Result"];
     */
    result?: PartnerApp;
}
/**
 * @generated from protobuf message api.ListPartnerAppsRequest
 */
export interface ListPartnerAppsRequest {
    /**
     * @generated from protobuf field: api.RequestProjectHeader Header = 1 [json_name = "Header"];
     */
    header?: RequestProjectHeader;
    /**
     * @generated from protobuf field: api.Paging Paging = 2 [json_name = "Paging"];
     */
    paging?: Paging;
}
/**
 * @generated from protobuf message api.ListPartnerAppsResult
 */
export interface ListPartnerAppsResult {
    /**
     * @generated from protobuf field: repeated api.PartnerApp Results = 1 [json_name = "Results"];
     */
    results: PartnerApp[];
}
/**
 * @generated from protobuf message api.DeletePartnerAppRequest
 */
export interface DeletePartnerAppRequest {
    /**
     * @generated from protobuf field: api.RequestProjectHeader Header = 1 [json_name = "Header"];
     */
    header?: RequestProjectHeader;
    /**
     * @generated from protobuf field: string ID = 2 [json_name = "ID"];
     */
    iD: string;
}
/**
 * @generated from protobuf message api.DeletePartnerAppResult
 */
export interface DeletePartnerAppResult {
    /**
     * @generated from protobuf field: api.WorkflowExecutionResult WorkflowExecution = 1 [json_name = "WorkflowExecution"];
     */
    workflowExecution?: WorkflowExecutionResult;
}
/**
 * @generated from protobuf message api.DeletePartnerAppInDBRequest
 */
export interface DeletePartnerAppInDBRequest {
    /**
     * @generated from protobuf field: string PartnerAppID = 1 [json_name = "PartnerAppID"];
     */
    partnerAppID: string;
}
/**
 * @generated from protobuf message api.DeletePartnerAppInDBResult
 */
export interface DeletePartnerAppInDBResult {
}
/**
 * @generated from protobuf message api.RenewPartnerAppRequest
 */
export interface RenewPartnerAppRequest {
    /**
     * @generated from protobuf field: api.RequestPartnerAppHeader Header = 1 [json_name = "Header"];
     */
    header?: RequestPartnerAppHeader;
}
/**
 * @generated from protobuf message api.RenewPartnerAppResult
 */
export interface RenewPartnerAppResult {
    /**
     * @generated from protobuf field: int32 Version = 1 [json_name = "Version"];
     */
    version: number;
    /**
     * @generated from protobuf field: string OrganisationID = 2 [json_name = "OrganisationID"];
     */
    organisationID: string;
    /**
     * @generated from protobuf field: string ProjectID = 3 [json_name = "ProjectID"];
     */
    projectID: string;
    /**
     * @generated from protobuf field: string PartnerAppID = 4 [json_name = "PartnerAppID"];
     */
    partnerAppID: string;
    /**
     * @generated from protobuf field: string PartnerAppJWT = 11 [json_name = "PartnerAppJWT"];
     */
    partnerAppJWT: string; // JWT for this partner app holding the partner app ID, the project ID and the organisation ID. This JWT is signed by the platform.
    /**
     * @generated from protobuf field: api.CoreEndpoint Core = 5 [json_name = "Core"];
     */
    core?: CoreEndpoint;
    /**
     * @generated from protobuf field: api.IntegrationEndpoint Integration = 6 [json_name = "Integration"];
     */
    integration?: IntegrationEndpoint;
    /**
     * @generated from protobuf field: api.OpenIDCredentials OpenID = 7 [json_name = "OpenID"];
     */
    openID?: OpenIDCredentials;
    /**
     * @generated from protobuf field: api.NatsCredentials Nats = 8 [json_name = "Nats"];
     */
    nats?: NatsCredentials;
    /**
     * @generated from protobuf field: api.OpenSearchCredentials OpenDistro = 9 [json_name = "OpenDistro"];
     */
    openDistro?: OpenSearchCredentials;
    /**
     * @generated from protobuf field: api.StorageEndpoint Storage = 10 [json_name = "Storage"];
     */
    storage?: StorageEndpoint;
}
// @generated message type with reflection information, may provide speed optimized methods
class PartnerApp$Type extends MessageType<PartnerApp> {
    constructor() {
        super("api.PartnerApp", [
            { no: 1, name: "ID", kind: "scalar", jsonName: "ID", T: 9 /*ScalarType.STRING*/ },
            { no: 2, name: "Name", kind: "scalar", jsonName: "Name", T: 9 /*ScalarType.STRING*/ },
            { no: 3, name: "Description", kind: "scalar", jsonName: "Description", T: 9 /*ScalarType.STRING*/ },
            { no: 4, name: "BucketPath", kind: "scalar", jsonName: "BucketPath", T: 9 /*ScalarType.STRING*/ },
            { no: 5, name: "NatsRootSubject", kind: "scalar", jsonName: "NatsRootSubject", T: 9 /*ScalarType.STRING*/ },
            { no: 6, name: "ProjectID", kind: "scalar", jsonName: "ProjectID", T: 9 /*ScalarType.STRING*/ },
            { no: 7, name: "OrganisationID", kind: "scalar", jsonName: "OrganisationID", T: 9 /*ScalarType.STRING*/ },
            { no: 8, name: "NatsServer", kind: "scalar", jsonName: "NatsServer", T: 9 /*ScalarType.STRING*/ }
        ]);
    }
    create(value?: PartialMessage<PartnerApp>): PartnerApp {
        const message = globalThis.Object.create((this.messagePrototype!));
        message.iD = "";
        message.name = "";
        message.description = "";
        message.bucketPath = "";
        message.natsRootSubject = "";
        message.projectID = "";
        message.organisationID = "";
        message.natsServer = "";
        if (value !== undefined)
            reflectionMergePartial<PartnerApp>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: PartnerApp): PartnerApp {
        let message = target ?? this.create(), end = reader.pos + length;
        while (reader.pos < end) {
            let [fieldNo, wireType] = reader.tag();
            switch (fieldNo) {
                case /* string ID = 1 [json_name = "ID"];*/ 1:
                    message.iD = reader.string();
                    break;
                case /* string Name = 2 [json_name = "Name"];*/ 2:
                    message.name = reader.string();
                    break;
                case /* string Description = 3 [json_name = "Description"];*/ 3:
                    message.description = reader.string();
                    break;
                case /* string BucketPath = 4 [json_name = "BucketPath"];*/ 4:
                    message.bucketPath = reader.string();
                    break;
                case /* string NatsRootSubject = 5 [json_name = "NatsRootSubject"];*/ 5:
                    message.natsRootSubject = reader.string();
                    break;
                case /* string ProjectID = 6 [json_name = "ProjectID"];*/ 6:
                    message.projectID = reader.string();
                    break;
                case /* string OrganisationID = 7 [json_name = "OrganisationID"];*/ 7:
                    message.organisationID = reader.string();
                    break;
                case /* string NatsServer = 8 [json_name = "NatsServer"];*/ 8:
                    message.natsServer = reader.string();
                    break;
                default:
                    let u = options.readUnknownField;
                    if (u === "throw")
                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
                    let d = reader.skip(wireType);
                    if (u !== false)
                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
            }
        }
        return message;
    }
    internalBinaryWrite(message: PartnerApp, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
        /* string ID = 1 [json_name = "ID"]; */
        if (message.iD !== "")
            writer.tag(1, WireType.LengthDelimited).string(message.iD);
        /* string Name = 2 [json_name = "Name"]; */
        if (message.name !== "")
            writer.tag(2, WireType.LengthDelimited).string(message.name);
        /* string Description = 3 [json_name = "Description"]; */
        if (message.description !== "")
            writer.tag(3, WireType.LengthDelimited).string(message.description);
        /* string BucketPath = 4 [json_name = "BucketPath"]; */
        if (message.bucketPath !== "")
            writer.tag(4, WireType.LengthDelimited).string(message.bucketPath);
        /* string NatsRootSubject = 5 [json_name = "NatsRootSubject"]; */
        if (message.natsRootSubject !== "")
            writer.tag(5, WireType.LengthDelimited).string(message.natsRootSubject);
        /* string ProjectID = 6 [json_name = "ProjectID"]; */
        if (message.projectID !== "")
            writer.tag(6, WireType.LengthDelimited).string(message.projectID);
        /* string OrganisationID = 7 [json_name = "OrganisationID"]; */
        if (message.organisationID !== "")
            writer.tag(7, WireType.LengthDelimited).string(message.organisationID);
        /* string NatsServer = 8 [json_name = "NatsServer"]; */
        if (message.natsServer !== "")
            writer.tag(8, WireType.LengthDelimited).string(message.natsServer);
        let u = options.writeUnknownFields;
        if (u !== false)
            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
        return writer;
    }
}
/**
 * @generated MessageType for protobuf message api.PartnerApp
 */
export const PartnerApp = new PartnerApp$Type();
// @generated message type with reflection information, may provide speed optimized methods
class CreatePartnerAppRequest$Type extends MessageType<CreatePartnerAppRequest> {
    constructor() {
        super("api.CreatePartnerAppRequest", [
            { no: 1, name: "Header", kind: "message", jsonName: "Header", T: () => RequestProjectHeader, options: { "validate.rules": { message: { required: true } } } },
            { no: 2, name: "Name", kind: "scalar", jsonName: "Name", T: 9 /*ScalarType.STRING*/, options: { "validate.rules": { string: { minLen: "1", pattern: "^([A-Za-z0-9-])+$" } }, "grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field": { pattern: "^([A-Za-z0-9-])+$" } } },
            { no: 3, name: "Description", kind: "scalar", jsonName: "Description", T: 9 /*ScalarType.STRING*/ }
        ]);
    }
    create(value?: PartialMessage<CreatePartnerAppRequest>): CreatePartnerAppRequest {
        const message = globalThis.Object.create((this.messagePrototype!));
        message.name = "";
        message.description = "";
        if (value !== undefined)
            reflectionMergePartial<CreatePartnerAppRequest>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: CreatePartnerAppRequest): CreatePartnerAppRequest {
        let message = target ?? this.create(), end = reader.pos + length;
        while (reader.pos < end) {
            let [fieldNo, wireType] = reader.tag();
            switch (fieldNo) {
                case /* api.RequestProjectHeader Header = 1 [json_name = "Header"];*/ 1:
                    message.header = RequestProjectHeader.internalBinaryRead(reader, reader.uint32(), options, message.header);
                    break;
                case /* string Name = 2 [json_name = "Name"];*/ 2:
                    message.name = reader.string();
                    break;
                case /* string Description = 3 [json_name = "Description"];*/ 3:
                    message.description = reader.string();
                    break;
                default:
                    let u = options.readUnknownField;
                    if (u === "throw")
                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
                    let d = reader.skip(wireType);
                    if (u !== false)
                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
            }
        }
        return message;
    }
    internalBinaryWrite(message: CreatePartnerAppRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
        /* api.RequestProjectHeader Header = 1 [json_name = "Header"]; */
        if (message.header)
            RequestProjectHeader.internalBinaryWrite(message.header, writer.tag(1, WireType.LengthDelimited).fork(), options).join();
        /* string Name = 2 [json_name = "Name"]; */
        if (message.name !== "")
            writer.tag(2, WireType.LengthDelimited).string(message.name);
        /* string Description = 3 [json_name = "Description"]; */
        if (message.description !== "")
            writer.tag(3, WireType.LengthDelimited).string(message.description);
        let u = options.writeUnknownFields;
        if (u !== false)
            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
        return writer;
    }
}
/**
 * @generated MessageType for protobuf message api.CreatePartnerAppRequest
 */
export const CreatePartnerAppRequest = new CreatePartnerAppRequest$Type();
// @generated message type with reflection information, may provide speed optimized methods
class CreatePartnerAppResult$Type extends MessageType<CreatePartnerAppResult> {
    constructor() {
        super("api.CreatePartnerAppResult", [
            { no: 1, name: "Version", kind: "scalar", jsonName: "Version", T: 5 /*ScalarType.INT32*/ },
            { no: 2, name: "OrganisationID", kind: "scalar", jsonName: "OrganisationID", T: 9 /*ScalarType.STRING*/ },
            { no: 3, name: "ProjectID", kind: "scalar", jsonName: "ProjectID", T: 9 /*ScalarType.STRING*/ },
            { no: 4, name: "PartnerAppID", kind: "scalar", jsonName: "PartnerAppID", T: 9 /*ScalarType.STRING*/ },
            { no: 11, name: "PartnerAppJWT", kind: "scalar", jsonName: "PartnerAppJWT", T: 9 /*ScalarType.STRING*/ },
            { no: 5, name: "Core", kind: "message", jsonName: "Core", T: () => CoreEndpoint },
            { no: 6, name: "Integration", kind: "message", jsonName: "Integration", T: () => IntegrationEndpoint },
            { no: 7, name: "OpenID", kind: "message", jsonName: "OpenID", T: () => OpenIDCredentials },
            { no: 8, name: "Nats", kind: "message", jsonName: "Nats", T: () => NatsCredentials },
            { no: 9, name: "OpenDistro", kind: "message", jsonName: "OpenDistro", T: () => OpenSearchCredentials },
            { no: 10, name: "Storage", kind: "message", jsonName: "Storage", T: () => StorageEndpoint }
        ]);
    }
    create(value?: PartialMessage<CreatePartnerAppResult>): CreatePartnerAppResult {
        const message = globalThis.Object.create((this.messagePrototype!));
        message.version = 0;
        message.organisationID = "";
        message.projectID = "";
        message.partnerAppID = "";
        message.partnerAppJWT = "";
        if (value !== undefined)
            reflectionMergePartial<CreatePartnerAppResult>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: CreatePartnerAppResult): CreatePartnerAppResult {
        let message = target ?? this.create(), end = reader.pos + length;
        while (reader.pos < end) {
            let [fieldNo, wireType] = reader.tag();
            switch (fieldNo) {
                case /* int32 Version = 1 [json_name = "Version"];*/ 1:
                    message.version = reader.int32();
                    break;
                case /* string OrganisationID = 2 [json_name = "OrganisationID"];*/ 2:
                    message.organisationID = reader.string();
                    break;
                case /* string ProjectID = 3 [json_name = "ProjectID"];*/ 3:
                    message.projectID = reader.string();
                    break;
                case /* string PartnerAppID = 4 [json_name = "PartnerAppID"];*/ 4:
                    message.partnerAppID = reader.string();
                    break;
                case /* string PartnerAppJWT = 11 [json_name = "PartnerAppJWT"];*/ 11:
                    message.partnerAppJWT = reader.string();
                    break;
                case /* api.CoreEndpoint Core = 5 [json_name = "Core"];*/ 5:
                    message.core = CoreEndpoint.internalBinaryRead(reader, reader.uint32(), options, message.core);
                    break;
                case /* api.IntegrationEndpoint Integration = 6 [json_name = "Integration"];*/ 6:
                    message.integration = IntegrationEndpoint.internalBinaryRead(reader, reader.uint32(), options, message.integration);
                    break;
                case /* api.OpenIDCredentials OpenID = 7 [json_name = "OpenID"];*/ 7:
                    message.openID = OpenIDCredentials.internalBinaryRead(reader, reader.uint32(), options, message.openID);
                    break;
                case /* api.NatsCredentials Nats = 8 [json_name = "Nats"];*/ 8:
                    message.nats = NatsCredentials.internalBinaryRead(reader, reader.uint32(), options, message.nats);
                    break;
                case /* api.OpenSearchCredentials OpenDistro = 9 [json_name = "OpenDistro"];*/ 9:
                    message.openDistro = OpenSearchCredentials.internalBinaryRead(reader, reader.uint32(), options, message.openDistro);
                    break;
                case /* api.StorageEndpoint Storage = 10 [json_name = "Storage"];*/ 10:
                    message.storage = StorageEndpoint.internalBinaryRead(reader, reader.uint32(), options, message.storage);
                    break;
                default:
                    let u = options.readUnknownField;
                    if (u === "throw")
                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
                    let d = reader.skip(wireType);
                    if (u !== false)
                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
            }
        }
        return message;
    }
    internalBinaryWrite(message: CreatePartnerAppResult, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
        /* int32 Version = 1 [json_name = "Version"]; */
        if (message.version !== 0)
            writer.tag(1, WireType.Varint).int32(message.version);
        /* string OrganisationID = 2 [json_name = "OrganisationID"]; */
        if (message.organisationID !== "")
            writer.tag(2, WireType.LengthDelimited).string(message.organisationID);
        /* string ProjectID = 3 [json_name = "ProjectID"]; */
        if (message.projectID !== "")
            writer.tag(3, WireType.LengthDelimited).string(message.projectID);
        /* string PartnerAppID = 4 [json_name = "PartnerAppID"]; */
        if (message.partnerAppID !== "")
            writer.tag(4, WireType.LengthDelimited).string(message.partnerAppID);
        /* string PartnerAppJWT = 11 [json_name = "PartnerAppJWT"]; */
        if (message.partnerAppJWT !== "")
            writer.tag(11, WireType.LengthDelimited).string(message.partnerAppJWT);
        /* api.CoreEndpoint Core = 5 [json_name = "Core"]; */
        if (message.core)
            CoreEndpoint.internalBinaryWrite(message.core, writer.tag(5, WireType.LengthDelimited).fork(), options).join();
        /* api.IntegrationEndpoint Integration = 6 [json_name = "Integration"]; */
        if (message.integration)
            IntegrationEndpoint.internalBinaryWrite(message.integration, writer.tag(6, WireType.LengthDelimited).fork(), options).join();
        /* api.OpenIDCredentials OpenID = 7 [json_name = "OpenID"]; */
        if (message.openID)
            OpenIDCredentials.internalBinaryWrite(message.openID, writer.tag(7, WireType.LengthDelimited).fork(), options).join();
        /* api.NatsCredentials Nats = 8 [json_name = "Nats"]; */
        if (message.nats)
            NatsCredentials.internalBinaryWrite(message.nats, writer.tag(8, WireType.LengthDelimited).fork(), options).join();
        /* api.OpenSearchCredentials OpenDistro = 9 [json_name = "OpenDistro"]; */
        if (message.openDistro)
            OpenSearchCredentials.internalBinaryWrite(message.openDistro, writer.tag(9, WireType.LengthDelimited).fork(), options).join();
        /* api.StorageEndpoint Storage = 10 [json_name = "Storage"]; */
        if (message.storage)
            StorageEndpoint.internalBinaryWrite(message.storage, writer.tag(10, WireType.LengthDelimited).fork(), options).join();
        let u = options.writeUnknownFields;
        if (u !== false)
            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
        return writer;
    }
}
/**
 * @generated MessageType for protobuf message api.CreatePartnerAppResult
 */
export const CreatePartnerAppResult = new CreatePartnerAppResult$Type();
// @generated message type with reflection information, may provide speed optimized methods
class UpdatePartnerAppRequest$Type extends MessageType<UpdatePartnerAppRequest> {
    constructor() {
        super("api.UpdatePartnerAppRequest", [
            { no: 1, name: "Header", kind: "message", jsonName: "Header", T: () => RequestProjectHeader, options: { "validate.rules": { message: { required: true } } } },
            { no: 2, name: "ID", kind: "scalar", jsonName: "ID", T: 9 /*ScalarType.STRING*/, options: { "validate.rules": { string: { minLen: "1" } } } },
            { no: 3, name: "Name", kind: "scalar", jsonName: "Name", T: 9 /*ScalarType.STRING*/, options: { "validate.rules": { string: { minLen: "1" } } } },
            { no: 4, name: "Description", kind: "scalar", jsonName: "Description", T: 9 /*ScalarType.STRING*/ }
        ]);
    }
    create(value?: PartialMessage<UpdatePartnerAppRequest>): UpdatePartnerAppRequest {
        const message = globalThis.Object.create((this.messagePrototype!));
        message.iD = "";
        message.name = "";
        message.description = "";
        if (value !== undefined)
            reflectionMergePartial<UpdatePartnerAppRequest>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: UpdatePartnerAppRequest): UpdatePartnerAppRequest {
        let message = target ?? this.create(), end = reader.pos + length;
        while (reader.pos < end) {
            let [fieldNo, wireType] = reader.tag();
            switch (fieldNo) {
                case /* api.RequestProjectHeader Header = 1 [json_name = "Header"];*/ 1:
                    message.header = RequestProjectHeader.internalBinaryRead(reader, reader.uint32(), options, message.header);
                    break;
                case /* string ID = 2 [json_name = "ID"];*/ 2:
                    message.iD = reader.string();
                    break;
                case /* string Name = 3 [json_name = "Name"];*/ 3:
                    message.name = reader.string();
                    break;
                case /* string Description = 4 [json_name = "Description"];*/ 4:
                    message.description = reader.string();
                    break;
                default:
                    let u = options.readUnknownField;
                    if (u === "throw")
                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
                    let d = reader.skip(wireType);
                    if (u !== false)
                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
            }
        }
        return message;
    }
    internalBinaryWrite(message: UpdatePartnerAppRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
        /* api.RequestProjectHeader Header = 1 [json_name = "Header"]; */
        if (message.header)
            RequestProjectHeader.internalBinaryWrite(message.header, writer.tag(1, WireType.LengthDelimited).fork(), options).join();
        /* string ID = 2 [json_name = "ID"]; */
        if (message.iD !== "")
            writer.tag(2, WireType.LengthDelimited).string(message.iD);
        /* string Name = 3 [json_name = "Name"]; */
        if (message.name !== "")
            writer.tag(3, WireType.LengthDelimited).string(message.name);
        /* string Description = 4 [json_name = "Description"]; */
        if (message.description !== "")
            writer.tag(4, WireType.LengthDelimited).string(message.description);
        let u = options.writeUnknownFields;
        if (u !== false)
            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
        return writer;
    }
}
/**
 * @generated MessageType for protobuf message api.UpdatePartnerAppRequest
 */
export const UpdatePartnerAppRequest = new UpdatePartnerAppRequest$Type();
// @generated message type with reflection information, may provide speed optimized methods
class UpdatePartnerAppResult$Type extends MessageType<UpdatePartnerAppResult> {
    constructor() {
        super("api.UpdatePartnerAppResult", [
            { no: 1, name: "Result", kind: "message", jsonName: "Result", T: () => PartnerApp }
        ]);
    }
    create(value?: PartialMessage<UpdatePartnerAppResult>): UpdatePartnerAppResult {
        const message = globalThis.Object.create((this.messagePrototype!));
        if (value !== undefined)
            reflectionMergePartial<UpdatePartnerAppResult>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: UpdatePartnerAppResult): UpdatePartnerAppResult {
        let message = target ?? this.create(), end = reader.pos + length;
        while (reader.pos < end) {
            let [fieldNo, wireType] = reader.tag();
            switch (fieldNo) {
                case /* api.PartnerApp Result = 1 [json_name = "Result"];*/ 1:
                    message.result = PartnerApp.internalBinaryRead(reader, reader.uint32(), options, message.result);
                    break;
                default:
                    let u = options.readUnknownField;
                    if (u === "throw")
                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
                    let d = reader.skip(wireType);
                    if (u !== false)
                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
            }
        }
        return message;
    }
    internalBinaryWrite(message: UpdatePartnerAppResult, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
        /* api.PartnerApp Result = 1 [json_name = "Result"]; */
        if (message.result)
            PartnerApp.internalBinaryWrite(message.result, writer.tag(1, WireType.LengthDelimited).fork(), options).join();
        let u = options.writeUnknownFields;
        if (u !== false)
            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
        return writer;
    }
}
/**
 * @generated MessageType for protobuf message api.UpdatePartnerAppResult
 */
export const UpdatePartnerAppResult = new UpdatePartnerAppResult$Type();
// @generated message type with reflection information, may provide speed optimized methods
class GetPartnerAppRequest$Type extends MessageType<GetPartnerAppRequest> {
    constructor() {
        super("api.GetPartnerAppRequest", [
            { no: 1, name: "Header", kind: "message", jsonName: "Header", T: () => RequestPartnerAppHeader, options: { "validate.rules": { message: { required: true } } } }
        ]);
    }
    create(value?: PartialMessage<GetPartnerAppRequest>): GetPartnerAppRequest {
        const message = globalThis.Object.create((this.messagePrototype!));
        if (value !== undefined)
            reflectionMergePartial<GetPartnerAppRequest>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: GetPartnerAppRequest): GetPartnerAppRequest {
        let message = target ?? this.create(), end = reader.pos + length;
        while (reader.pos < end) {
            let [fieldNo, wireType] = reader.tag();
            switch (fieldNo) {
                case /* api.RequestPartnerAppHeader Header = 1 [json_name = "Header"];*/ 1:
                    message.header = RequestPartnerAppHeader.internalBinaryRead(reader, reader.uint32(), options, message.header);
                    break;
                default:
                    let u = options.readUnknownField;
                    if (u === "throw")
                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
                    let d = reader.skip(wireType);
                    if (u !== false)
                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
            }
        }
        return message;
    }
    internalBinaryWrite(message: GetPartnerAppRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
        /* api.RequestPartnerAppHeader Header = 1 [json_name = "Header"]; */
        if (message.header)
            RequestPartnerAppHeader.internalBinaryWrite(message.header, writer.tag(1, WireType.LengthDelimited).fork(), options).join();
        let u = options.writeUnknownFields;
        if (u !== false)
            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
        return writer;
    }
}
/**
 * @generated MessageType for protobuf message api.GetPartnerAppRequest
 */
export const GetPartnerAppRequest = new GetPartnerAppRequest$Type();
// @generated message type with reflection information, may provide speed optimized methods
class GetPartnerAppResult$Type extends MessageType<GetPartnerAppResult> {
    constructor() {
        super("api.GetPartnerAppResult", [
            { no: 1, name: "Result", kind: "message", jsonName: "Result", T: () => PartnerApp }
        ]);
    }
    create(value?: PartialMessage<GetPartnerAppResult>): GetPartnerAppResult {
        const message = globalThis.Object.create((this.messagePrototype!));
        if (value !== undefined)
            reflectionMergePartial<GetPartnerAppResult>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: GetPartnerAppResult): GetPartnerAppResult {
        let message = target ?? this.create(), end = reader.pos + length;
        while (reader.pos < end) {
            let [fieldNo, wireType] = reader.tag();
            switch (fieldNo) {
                case /* api.PartnerApp Result = 1 [json_name = "Result"];*/ 1:
                    message.result = PartnerApp.internalBinaryRead(reader, reader.uint32(), options, message.result);
                    break;
                default:
                    let u = options.readUnknownField;
                    if (u === "throw")
                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
                    let d = reader.skip(wireType);
                    if (u !== false)
                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
            }
        }
        return message;
    }
    internalBinaryWrite(message: GetPartnerAppResult, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
        /* api.PartnerApp Result = 1 [json_name = "Result"]; */
        if (message.result)
            PartnerApp.internalBinaryWrite(message.result, writer.tag(1, WireType.LengthDelimited).fork(), options).join();
        let u = options.writeUnknownFields;
        if (u !== false)
            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
        return writer;
    }
}
/**
 * @generated MessageType for protobuf message api.GetPartnerAppResult
 */
export const GetPartnerAppResult = new GetPartnerAppResult$Type();
// @generated message type with reflection information, may provide speed optimized methods
class ListPartnerAppsRequest$Type extends MessageType<ListPartnerAppsRequest> {
    constructor() {
        super("api.ListPartnerAppsRequest", [
            { no: 1, name: "Header", kind: "message", jsonName: "Header", T: () => RequestProjectHeader, options: { "validate.rules": { message: { required: true } } } },
            { no: 2, name: "Paging", kind: "message", jsonName: "Paging", T: () => Paging }
        ]);
    }
    create(value?: PartialMessage<ListPartnerAppsRequest>): ListPartnerAppsRequest {
        const message = globalThis.Object.create((this.messagePrototype!));
        if (value !== undefined)
            reflectionMergePartial<ListPartnerAppsRequest>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ListPartnerAppsRequest): ListPartnerAppsRequest {
        let message = target ?? this.create(), end = reader.pos + length;
        while (reader.pos < end) {
            let [fieldNo, wireType] = reader.tag();
            switch (fieldNo) {
                case /* api.RequestProjectHeader Header = 1 [json_name = "Header"];*/ 1:
                    message.header = RequestProjectHeader.internalBinaryRead(reader, reader.uint32(), options, message.header);
                    break;
                case /* api.Paging Paging = 2 [json_name = "Paging"];*/ 2:
                    message.paging = Paging.internalBinaryRead(reader, reader.uint32(), options, message.paging);
                    break;
                default:
                    let u = options.readUnknownField;
                    if (u === "throw")
                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
                    let d = reader.skip(wireType);
                    if (u !== false)
                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
            }
        }
        return message;
    }
    internalBinaryWrite(message: ListPartnerAppsRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
        /* api.RequestProjectHeader Header = 1 [json_name = "Header"]; */
        if (message.header)
            RequestProjectHeader.internalBinaryWrite(message.header, writer.tag(1, WireType.LengthDelimited).fork(), options).join();
        /* api.Paging Paging = 2 [json_name = "Paging"]; */
        if (message.paging)
            Paging.internalBinaryWrite(message.paging, writer.tag(2, WireType.LengthDelimited).fork(), options).join();
        let u = options.writeUnknownFields;
        if (u !== false)
            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
        return writer;
    }
}
/**
 * @generated MessageType for protobuf message api.ListPartnerAppsRequest
 */
export const ListPartnerAppsRequest = new ListPartnerAppsRequest$Type();
// @generated message type with reflection information, may provide speed optimized methods
class ListPartnerAppsResult$Type extends MessageType<ListPartnerAppsResult> {
    constructor() {
        super("api.ListPartnerAppsResult", [
            { no: 1, name: "Results", kind: "message", jsonName: "Results", repeat: 1 /*RepeatType.PACKED*/, T: () => PartnerApp }
        ]);
    }
    create(value?: PartialMessage<ListPartnerAppsResult>): ListPartnerAppsResult {
        const message = globalThis.Object.create((this.messagePrototype!));
        message.results = [];
        if (value !== undefined)
            reflectionMergePartial<ListPartnerAppsResult>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ListPartnerAppsResult): ListPartnerAppsResult {
        let message = target ?? this.create(), end = reader.pos + length;
        while (reader.pos < end) {
            let [fieldNo, wireType] = reader.tag();
            switch (fieldNo) {
                case /* repeated api.PartnerApp Results = 1 [json_name = "Results"];*/ 1:
                    message.results.push(PartnerApp.internalBinaryRead(reader, reader.uint32(), options));
                    break;
                default:
                    let u = options.readUnknownField;
                    if (u === "throw")
                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
                    let d = reader.skip(wireType);
                    if (u !== false)
                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
            }
        }
        return message;
    }
    internalBinaryWrite(message: ListPartnerAppsResult, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
        /* repeated api.PartnerApp Results = 1 [json_name = "Results"]; */
        for (let i = 0; i < message.results.length; i++)
            PartnerApp.internalBinaryWrite(message.results[i], writer.tag(1, WireType.LengthDelimited).fork(), options).join();
        let u = options.writeUnknownFields;
        if (u !== false)
            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
        return writer;
    }
}
/**
 * @generated MessageType for protobuf message api.ListPartnerAppsResult
 */
export const ListPartnerAppsResult = new ListPartnerAppsResult$Type();
// @generated message type with reflection information, may provide speed optimized methods
class DeletePartnerAppRequest$Type extends MessageType<DeletePartnerAppRequest> {
    constructor() {
        super("api.DeletePartnerAppRequest", [
            { no: 1, name: "Header", kind: "message", jsonName: "Header", T: () => RequestProjectHeader, options: { "validate.rules": { message: { required: true } } } },
            { no: 2, name: "ID", kind: "scalar", jsonName: "ID", T: 9 /*ScalarType.STRING*/, options: { "validate.rules": { string: { minLen: "1" } } } }
        ]);
    }
    create(value?: PartialMessage<DeletePartnerAppRequest>): DeletePartnerAppRequest {
        const message = globalThis.Object.create((this.messagePrototype!));
        message.iD = "";
        if (value !== undefined)
            reflectionMergePartial<DeletePartnerAppRequest>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: DeletePartnerAppRequest): DeletePartnerAppRequest {
        let message = target ?? this.create(), end = reader.pos + length;
        while (reader.pos < end) {
            let [fieldNo, wireType] = reader.tag();
            switch (fieldNo) {
                case /* api.RequestProjectHeader Header = 1 [json_name = "Header"];*/ 1:
                    message.header = RequestProjectHeader.internalBinaryRead(reader, reader.uint32(), options, message.header);
                    break;
                case /* string ID = 2 [json_name = "ID"];*/ 2:
                    message.iD = reader.string();
                    break;
                default:
                    let u = options.readUnknownField;
                    if (u === "throw")
                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
                    let d = reader.skip(wireType);
                    if (u !== false)
                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
            }
        }
        return message;
    }
    internalBinaryWrite(message: DeletePartnerAppRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
        /* api.RequestProjectHeader Header = 1 [json_name = "Header"]; */
        if (message.header)
            RequestProjectHeader.internalBinaryWrite(message.header, writer.tag(1, WireType.LengthDelimited).fork(), options).join();
        /* string ID = 2 [json_name = "ID"]; */
        if (message.iD !== "")
            writer.tag(2, WireType.LengthDelimited).string(message.iD);
        let u = options.writeUnknownFields;
        if (u !== false)
            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
        return writer;
    }
}
/**
 * @generated MessageType for protobuf message api.DeletePartnerAppRequest
 */
export const DeletePartnerAppRequest = new DeletePartnerAppRequest$Type();
// @generated message type with reflection information, may provide speed optimized methods
class DeletePartnerAppResult$Type extends MessageType<DeletePartnerAppResult> {
    constructor() {
        super("api.DeletePartnerAppResult", [
            { no: 1, name: "WorkflowExecution", kind: "message", jsonName: "WorkflowExecution", T: () => WorkflowExecutionResult }
        ]);
    }
    create(value?: PartialMessage<DeletePartnerAppResult>): DeletePartnerAppResult {
        const message = globalThis.Object.create((this.messagePrototype!));
        if (value !== undefined)
            reflectionMergePartial<DeletePartnerAppResult>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: DeletePartnerAppResult): DeletePartnerAppResult {
        let message = target ?? this.create(), end = reader.pos + length;
        while (reader.pos < end) {
            let [fieldNo, wireType] = reader.tag();
            switch (fieldNo) {
                case /* api.WorkflowExecutionResult WorkflowExecution = 1 [json_name = "WorkflowExecution"];*/ 1:
                    message.workflowExecution = WorkflowExecutionResult.internalBinaryRead(reader, reader.uint32(), options, message.workflowExecution);
                    break;
                default:
                    let u = options.readUnknownField;
                    if (u === "throw")
                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
                    let d = reader.skip(wireType);
                    if (u !== false)
                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
            }
        }
        return message;
    }
    internalBinaryWrite(message: DeletePartnerAppResult, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
        /* api.WorkflowExecutionResult WorkflowExecution = 1 [json_name = "WorkflowExecution"]; */
        if (message.workflowExecution)
            WorkflowExecutionResult.internalBinaryWrite(message.workflowExecution, writer.tag(1, WireType.LengthDelimited).fork(), options).join();
        let u = options.writeUnknownFields;
        if (u !== false)
            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
        return writer;
    }
}
/**
 * @generated MessageType for protobuf message api.DeletePartnerAppResult
 */
export const DeletePartnerAppResult = new DeletePartnerAppResult$Type();
// @generated message type with reflection information, may provide speed optimized methods
class DeletePartnerAppInDBRequest$Type extends MessageType<DeletePartnerAppInDBRequest> {
    constructor() {
        super("api.DeletePartnerAppInDBRequest", [
            { no: 1, name: "PartnerAppID", kind: "scalar", jsonName: "PartnerAppID", T: 9 /*ScalarType.STRING*/, options: { "validate.rules": { string: { minLen: "1" } } } }
        ]);
    }
    create(value?: PartialMessage<DeletePartnerAppInDBRequest>): DeletePartnerAppInDBRequest {
        const message = globalThis.Object.create((this.messagePrototype!));
        message.partnerAppID = "";
        if (value !== undefined)
            reflectionMergePartial<DeletePartnerAppInDBRequest>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: DeletePartnerAppInDBRequest): DeletePartnerAppInDBRequest {
        let message = target ?? this.create(), end = reader.pos + length;
        while (reader.pos < end) {
            let [fieldNo, wireType] = reader.tag();
            switch (fieldNo) {
                case /* string PartnerAppID = 1 [json_name = "PartnerAppID"];*/ 1:
                    message.partnerAppID = reader.string();
                    break;
                default:
                    let u = options.readUnknownField;
                    if (u === "throw")
                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
                    let d = reader.skip(wireType);
                    if (u !== false)
                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
            }
        }
        return message;
    }
    internalBinaryWrite(message: DeletePartnerAppInDBRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
        /* string PartnerAppID = 1 [json_name = "PartnerAppID"]; */
        if (message.partnerAppID !== "")
            writer.tag(1, WireType.LengthDelimited).string(message.partnerAppID);
        let u = options.writeUnknownFields;
        if (u !== false)
            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
        return writer;
    }
}
/**
 * @generated MessageType for protobuf message api.DeletePartnerAppInDBRequest
 */
export const DeletePartnerAppInDBRequest = new DeletePartnerAppInDBRequest$Type();
// @generated message type with reflection information, may provide speed optimized methods
class DeletePartnerAppInDBResult$Type extends MessageType<DeletePartnerAppInDBResult> {
    constructor() {
        super("api.DeletePartnerAppInDBResult", []);
    }
    create(value?: PartialMessage<DeletePartnerAppInDBResult>): DeletePartnerAppInDBResult {
        const message = globalThis.Object.create((this.messagePrototype!));
        if (value !== undefined)
            reflectionMergePartial<DeletePartnerAppInDBResult>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: DeletePartnerAppInDBResult): DeletePartnerAppInDBResult {
        let message = target ?? this.create(), end = reader.pos + length;
        while (reader.pos < end) {
            let [fieldNo, wireType] = reader.tag();
            switch (fieldNo) {
                default:
                    let u = options.readUnknownField;
                    if (u === "throw")
                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
                    let d = reader.skip(wireType);
                    if (u !== false)
                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
            }
        }
        return message;
    }
    internalBinaryWrite(message: DeletePartnerAppInDBResult, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
        let u = options.writeUnknownFields;
        if (u !== false)
            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
        return writer;
    }
}
/**
 * @generated MessageType for protobuf message api.DeletePartnerAppInDBResult
 */
export const DeletePartnerAppInDBResult = new DeletePartnerAppInDBResult$Type();
// @generated message type with reflection information, may provide speed optimized methods
class RenewPartnerAppRequest$Type extends MessageType<RenewPartnerAppRequest> {
    constructor() {
        super("api.RenewPartnerAppRequest", [
            { no: 1, name: "Header", kind: "message", jsonName: "Header", T: () => RequestPartnerAppHeader, options: { "validate.rules": { message: { required: true } } } }
        ]);
    }
    create(value?: PartialMessage<RenewPartnerAppRequest>): RenewPartnerAppRequest {
        const message = globalThis.Object.create((this.messagePrototype!));
        if (value !== undefined)
            reflectionMergePartial<RenewPartnerAppRequest>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: RenewPartnerAppRequest): RenewPartnerAppRequest {
        let message = target ?? this.create(), end = reader.pos + length;
        while (reader.pos < end) {
            let [fieldNo, wireType] = reader.tag();
            switch (fieldNo) {
                case /* api.RequestPartnerAppHeader Header = 1 [json_name = "Header"];*/ 1:
                    message.header = RequestPartnerAppHeader.internalBinaryRead(reader, reader.uint32(), options, message.header);
                    break;
                default:
                    let u = options.readUnknownField;
                    if (u === "throw")
                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
                    let d = reader.skip(wireType);
                    if (u !== false)
                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
            }
        }
        return message;
    }
    internalBinaryWrite(message: RenewPartnerAppRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
        /* api.RequestPartnerAppHeader Header = 1 [json_name = "Header"]; */
        if (message.header)
            RequestPartnerAppHeader.internalBinaryWrite(message.header, writer.tag(1, WireType.LengthDelimited).fork(), options).join();
        let u = options.writeUnknownFields;
        if (u !== false)
            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
        return writer;
    }
}
/**
 * @generated MessageType for protobuf message api.RenewPartnerAppRequest
 */
export const RenewPartnerAppRequest = new RenewPartnerAppRequest$Type();
// @generated message type with reflection information, may provide speed optimized methods
class RenewPartnerAppResult$Type extends MessageType<RenewPartnerAppResult> {
    constructor() {
        super("api.RenewPartnerAppResult", [
            { no: 1, name: "Version", kind: "scalar", jsonName: "Version", T: 5 /*ScalarType.INT32*/ },
            { no: 2, name: "OrganisationID", kind: "scalar", jsonName: "OrganisationID", T: 9 /*ScalarType.STRING*/ },
            { no: 3, name: "ProjectID", kind: "scalar", jsonName: "ProjectID", T: 9 /*ScalarType.STRING*/ },
            { no: 4, name: "PartnerAppID", kind: "scalar", jsonName: "PartnerAppID", T: 9 /*ScalarType.STRING*/ },
            { no: 11, name: "PartnerAppJWT", kind: "scalar", jsonName: "PartnerAppJWT", T: 9 /*ScalarType.STRING*/ },
            { no: 5, name: "Core", kind: "message", jsonName: "Core", T: () => CoreEndpoint },
            { no: 6, name: "Integration", kind: "message", jsonName: "Integration", T: () => IntegrationEndpoint },
            { no: 7, name: "OpenID", kind: "message", jsonName: "OpenID", T: () => OpenIDCredentials },
            { no: 8, name: "Nats", kind: "message", jsonName: "Nats", T: () => NatsCredentials },
            { no: 9, name: "OpenDistro", kind: "message", jsonName: "OpenDistro", T: () => OpenSearchCredentials },
            { no: 10, name: "Storage", kind: "message", jsonName: "Storage", T: () => StorageEndpoint }
        ]);
    }
    create(value?: PartialMessage<RenewPartnerAppResult>): RenewPartnerAppResult {
        const message = globalThis.Object.create((this.messagePrototype!));
        message.version = 0;
        message.organisationID = "";
        message.projectID = "";
        message.partnerAppID = "";
        message.partnerAppJWT = "";
        if (value !== undefined)
            reflectionMergePartial<RenewPartnerAppResult>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: RenewPartnerAppResult): RenewPartnerAppResult {
        let message = target ?? this.create(), end = reader.pos + length;
        while (reader.pos < end) {
            let [fieldNo, wireType] = reader.tag();
            switch (fieldNo) {
                case /* int32 Version = 1 [json_name = "Version"];*/ 1:
                    message.version = reader.int32();
                    break;
                case /* string OrganisationID = 2 [json_name = "OrganisationID"];*/ 2:
                    message.organisationID = reader.string();
                    break;
                case /* string ProjectID = 3 [json_name = "ProjectID"];*/ 3:
                    message.projectID = reader.string();
                    break;
                case /* string PartnerAppID = 4 [json_name = "PartnerAppID"];*/ 4:
                    message.partnerAppID = reader.string();
                    break;
                case /* string PartnerAppJWT = 11 [json_name = "PartnerAppJWT"];*/ 11:
                    message.partnerAppJWT = reader.string();
                    break;
                case /* api.CoreEndpoint Core = 5 [json_name = "Core"];*/ 5:
                    message.core = CoreEndpoint.internalBinaryRead(reader, reader.uint32(), options, message.core);
                    break;
                case /* api.IntegrationEndpoint Integration = 6 [json_name = "Integration"];*/ 6:
                    message.integration = IntegrationEndpoint.internalBinaryRead(reader, reader.uint32(), options, message.integration);
                    break;
                case /* api.OpenIDCredentials OpenID = 7 [json_name = "OpenID"];*/ 7:
                    message.openID = OpenIDCredentials.internalBinaryRead(reader, reader.uint32(), options, message.openID);
                    break;
                case /* api.NatsCredentials Nats = 8 [json_name = "Nats"];*/ 8:
                    message.nats = NatsCredentials.internalBinaryRead(reader, reader.uint32(), options, message.nats);
                    break;
                case /* api.OpenSearchCredentials OpenDistro = 9 [json_name = "OpenDistro"];*/ 9:
                    message.openDistro = OpenSearchCredentials.internalBinaryRead(reader, reader.uint32(), options, message.openDistro);
                    break;
                case /* api.StorageEndpoint Storage = 10 [json_name = "Storage"];*/ 10:
                    message.storage = StorageEndpoint.internalBinaryRead(reader, reader.uint32(), options, message.storage);
                    break;
                default:
                    let u = options.readUnknownField;
                    if (u === "throw")
                        throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
                    let d = reader.skip(wireType);
                    if (u !== false)
                        (u === true ? UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
            }
        }
        return message;
    }
    internalBinaryWrite(message: RenewPartnerAppResult, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
        /* int32 Version = 1 [json_name = "Version"]; */
        if (message.version !== 0)
            writer.tag(1, WireType.Varint).int32(message.version);
        /* string OrganisationID = 2 [json_name = "OrganisationID"]; */
        if (message.organisationID !== "")
            writer.tag(2, WireType.LengthDelimited).string(message.organisationID);
        /* string ProjectID = 3 [json_name = "ProjectID"]; */
        if (message.projectID !== "")
            writer.tag(3, WireType.LengthDelimited).string(message.projectID);
        /* string PartnerAppID = 4 [json_name = "PartnerAppID"]; */
        if (message.partnerAppID !== "")
            writer.tag(4, WireType.LengthDelimited).string(message.partnerAppID);
        /* string PartnerAppJWT = 11 [json_name = "PartnerAppJWT"]; */
        if (message.partnerAppJWT !== "")
            writer.tag(11, WireType.LengthDelimited).string(message.partnerAppJWT);
        /* api.CoreEndpoint Core = 5 [json_name = "Core"]; */
        if (message.core)
            CoreEndpoint.internalBinaryWrite(message.core, writer.tag(5, WireType.LengthDelimited).fork(), options).join();
        /* api.IntegrationEndpoint Integration = 6 [json_name = "Integration"]; */
        if (message.integration)
            IntegrationEndpoint.internalBinaryWrite(message.integration, writer.tag(6, WireType.LengthDelimited).fork(), options).join();
        /* api.OpenIDCredentials OpenID = 7 [json_name = "OpenID"]; */
        if (message.openID)
            OpenIDCredentials.internalBinaryWrite(message.openID, writer.tag(7, WireType.LengthDelimited).fork(), options).join();
        /* api.NatsCredentials Nats = 8 [json_name = "Nats"]; */
        if (message.nats)
            NatsCredentials.internalBinaryWrite(message.nats, writer.tag(8, WireType.LengthDelimited).fork(), options).join();
        /* api.OpenSearchCredentials OpenDistro = 9 [json_name = "OpenDistro"]; */
        if (message.openDistro)
            OpenSearchCredentials.internalBinaryWrite(message.openDistro, writer.tag(9, WireType.LengthDelimited).fork(), options).join();
        /* api.StorageEndpoint Storage = 10 [json_name = "Storage"]; */
        if (message.storage)
            StorageEndpoint.internalBinaryWrite(message.storage, writer.tag(10, WireType.LengthDelimited).fork(), options).join();
        let u = options.writeUnknownFields;
        if (u !== false)
            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
        return writer;
    }
}
/**
 * @generated MessageType for protobuf message api.RenewPartnerAppResult
 */
export const RenewPartnerAppResult = new RenewPartnerAppResult$Type();
/**
 * @generated ServiceType for protobuf service api.PartnerAppService
 */
export const PartnerAppService = new ServiceType("api.PartnerAppService", [
    { name: "Create", options: { "grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation": { tags: ["Admin PartnerApp"], description: "Create Project partner application" }, "api.rscType": "Project", "api.roles": "", "google.api.method_visibility": { restriction: "SDK" } }, I: CreatePartnerAppRequest, O: CreatePartnerAppResult },
    { name: "Update", options: { "grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation": { tags: ["Admin PartnerApp"], description: "Update Project partner application" }, "api.rscType": "Project", "api.roles": "", "google.api.method_visibility": { restriction: "SDK" } }, I: UpdatePartnerAppRequest, O: UpdatePartnerAppResult },
    { name: "Delete", options: { "grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation": { tags: ["Admin PartnerApp"], description: "Delete Project partner application" }, "api.rscType": "Project", "api.roles": "Platform.PartnerApp", "google.api.method_visibility": { restriction: "SDK" } }, I: DeletePartnerAppRequest, O: DeletePartnerAppResult },
    { name: "Get", options: { "grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation": { tags: ["Admin PartnerApp"], description: "Get Project partner application" }, "api.rscType": "PartnerApp", "api.roles": "Platform.PartnerApp", "google.api.method_visibility": { restriction: "SDK" } }, I: GetPartnerAppRequest, O: GetPartnerAppResult },
    { name: "List", options: { "grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation": { tags: ["Admin PartnerApp"], description: "List Project partner application" }, "api.rscType": "Project", "api.roles": "Platform.PartnerApp", "google.api.method_visibility": { restriction: "SDK" } }, I: ListPartnerAppsRequest, O: ListPartnerAppsResult },
    { name: "DeletePartnerAppInDB", options: { "grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation": { tags: ["Admin PartnerApp"], description: "Delete partner application in database" }, "api.rscType": "Platform", "api.roles": "Platform.PartnerApp", "google.api.method_visibility": { restriction: "INTERNAL" } }, I: DeletePartnerAppInDBRequest, O: DeletePartnerAppInDBResult },
    { name: "Renew", options: { "grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation": { tags: ["Admin PartnerApp"], description: "Renew Project partner application credentials" }, "api.rscType": "PartnerApp", "api.roles": "Platform.PartnerApp", "google.api.method_visibility": { restriction: "SDK" } }, I: RenewPartnerAppRequest, O: RenewPartnerAppResult }
], { "api.k8sService": "organisation-server" });
