// @generated by protobuf-ts 2.9.6
// @generated from protobuf file "workflow.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 { RecoverType } from "./shared";
import { ModelDataSetEnum } from "./shared";
import { ModuleWorkflowTypeEnum } from "./shared";
import { WorkflowTypeEnum } from "./shared";
import { ModuleDeregistration } from "./shared";
import { ModuleRegistration } from "./shared";
import { CHMetric } from "./clickhouse";
import { CHDimension } from "./clickhouse";
import { CHFilter } from "./clickhouse";
import { EntityBlockFilter } from "./clickhouse";
import { CHQueryType } from "./clickhouse";
import { ExtractColumnFormat } from "./shared";
import { TranslationMap } from "./shared";
import { BlockFilter } from "./shared";
import { Module } from "./module";
import { WorkflowExecutionResult } from "./shared";
/**
 * @generated from protobuf message api.RetryWorkflowRequest
 */
export interface RetryWorkflowRequest {
    /**
     * @generated from protobuf field: string WorkflowId = 1 [json_name = "WorkflowId"];
     */
    workflowId: string;
    /**
     * @generated from protobuf field: string RunId = 2 [json_name = "RunId"];
     */
    runId: string;
    /**
     * @generated from protobuf field: string Domain = 3 [json_name = "Domain"];
     */
    domain: string;
}
/**
 * @generated from protobuf message api.RetryWorkflowResult
 */
export interface RetryWorkflowResult {
    /**
     * @generated from protobuf field: api.WorkflowExecutionResult WorkflowExecution = 1 [json_name = "WorkflowExecution"];
     */
    workflowExecution?: WorkflowExecutionResult;
}
/**
 * @generated from protobuf message api.StartWorkflowCreateProjectRequest
 */
export interface StartWorkflowCreateProjectRequest {
    /**
     * @generated from protobuf field: string OrganisationId = 1 [json_name = "OrganisationId"];
     */
    organisationId: string;
    /**
     * @generated from protobuf field: string ProjectId = 2 [json_name = "ProjectId"];
     */
    projectId: string;
    /**
     * @generated from protobuf field: string UserSub = 3 [json_name = "UserSub"];
     */
    userSub: string;
    /**
     * @generated from protobuf field: string ManagerEmail = 4 [json_name = "ManagerEmail"];
     */
    managerEmail: string;
    /**
     * @generated from protobuf field: repeated api.Module Modules = 5 [json_name = "Modules"];
     */
    modules: Module[];
}
/**
 * @generated from protobuf message api.StartWorkflowCreateProjectResult
 */
export interface StartWorkflowCreateProjectResult {
    /**
     * @generated from protobuf field: api.WorkflowExecutionResult WorkflowExecution = 1 [json_name = "WorkflowExecution"];
     */
    workflowExecution?: WorkflowExecutionResult;
}
/**
 * @generated from protobuf message api.StartWorkflowDeleteProjectRequest
 */
export interface StartWorkflowDeleteProjectRequest {
    /**
     * @generated from protobuf field: string OrganisationId = 1 [json_name = "OrganisationId"];
     */
    organisationId: string;
    /**
     * @generated from protobuf field: string ProjectId = 2 [json_name = "ProjectId"];
     */
    projectId: string;
    /**
     * @generated from protobuf field: string UserId = 3 [json_name = "UserId"];
     */
    userId: string;
}
/**
 * @generated from protobuf message api.StartWorkflowDeleteProjectResult
 */
export interface StartWorkflowDeleteProjectResult {
    /**
     * @generated from protobuf field: api.WorkflowExecutionResult WorkflowExecution = 1 [json_name = "WorkflowExecution"];
     */
    workflowExecution?: WorkflowExecutionResult;
}
/**
 * @generated from protobuf message api.StartWorkflowDeleteCoreRequest
 */
export interface StartWorkflowDeleteCoreRequest {
    /**
     * @generated from protobuf field: string OrganisationId = 1 [json_name = "OrganisationId"];
     */
    organisationId: string;
    /**
     * @generated from protobuf field: string ProjectId = 2 [json_name = "ProjectId"];
     */
    projectId: string;
}
/**
 * @generated from protobuf message api.StartWorkflowDeleteCoreResult
 */
export interface StartWorkflowDeleteCoreResult {
    /**
     * @generated from protobuf field: api.WorkflowExecutionResult WorkflowExecution = 1 [json_name = "WorkflowExecution"];
     */
    workflowExecution?: WorkflowExecutionResult;
}
/**
 * @generated from protobuf message api.StartWorkflowDeletePartnerAppRequest
 */
export interface StartWorkflowDeletePartnerAppRequest {
    /**
     * @generated from protobuf field: string OrganisationId = 1 [json_name = "OrganisationId"];
     */
    organisationId: string;
    /**
     * @generated from protobuf field: string ProjectId = 2 [json_name = "ProjectId"];
     */
    projectId: string;
    /**
     * @generated from protobuf field: string PartnerAppId = 3 [json_name = "PartnerAppId"];
     */
    partnerAppId: string;
    /**
     * @generated from protobuf field: string UserId = 4 [json_name = "UserId"];
     */
    userId: string;
}
/**
 * @generated from protobuf message api.StartWorkflowDeletePartnerAppResult
 */
export interface StartWorkflowDeletePartnerAppResult {
    /**
     * @generated from protobuf field: api.WorkflowExecutionResult WorkflowExecution = 1 [json_name = "WorkflowExecution"];
     */
    workflowExecution?: WorkflowExecutionResult;
}
/**
 * @generated from protobuf message api.StartWorkflowDeleteConnectionRequest
 */
export interface StartWorkflowDeleteConnectionRequest {
    /**
     * @generated from protobuf field: string OrganisationId = 1 [json_name = "OrganisationId"];
     */
    organisationId: string;
    /**
     * @generated from protobuf field: string ConnectionId = 2 [json_name = "ConnectionId"];
     */
    connectionId: string;
    /**
     * @generated from protobuf field: string UserId = 3 [json_name = "UserId"];
     */
    userId: string;
}
/**
 * @generated from protobuf message api.StartWorkflowDeleteConnectionResult
 */
export interface StartWorkflowDeleteConnectionResult {
    /**
     * @generated from protobuf field: api.WorkflowExecutionResult WorkflowExecution = 1 [json_name = "WorkflowExecution"];
     */
    workflowExecution?: WorkflowExecutionResult;
}
/**
 * @generated from protobuf message api.StartWorkflowBillingRequest
 */
export interface StartWorkflowBillingRequest {
    /**
     * @generated from protobuf field: string OrganisationId = 1 [json_name = "OrganisationId"];
     */
    organisationId: string;
}
/**
 * @generated from protobuf message api.StartWorkflowBillingResult
 */
export interface StartWorkflowBillingResult {
    /**
     * @generated from protobuf field: api.WorkflowExecutionResult WorkflowExecution = 1 [json_name = "WorkflowExecution"];
     */
    workflowExecution?: WorkflowExecutionResult;
}
/**
 * @generated from protobuf message api.StopWorkflowBillingRequest
 */
export interface StopWorkflowBillingRequest {
    /**
     * @generated from protobuf field: string OrganisationId = 1 [json_name = "OrganisationId"];
     */
    organisationId: string;
}
/**
 * @generated from protobuf message api.StopWorkflowBillingResult
 */
export interface StopWorkflowBillingResult {
}
/**
 * @generated from protobuf message api.StartWorkflowExtractDataFromDBRequest
 */
export interface StartWorkflowExtractDataFromDBRequest {
    /**
     * @generated from protobuf field: string UserId = 1 [json_name = "UserId"];
     */
    userId: string;
    /**
     * @generated from protobuf field: string ProjectId = 2 [json_name = "ProjectId"];
     */
    projectId: string;
    /**
     * @generated from protobuf field: repeated api.BlockFilter BlockFilters = 3 [json_name = "BlockFilters"];
     */
    blockFilters: BlockFilter[];
    /**
     * @generated from protobuf field: string TargetDomain = 9 [json_name = "TargetDomain"];
     */
    targetDomain: string;
    /**
     * @generated from protobuf field: string TargetType = 4 [json_name = "TargetType"];
     */
    targetType: string;
    /**
     * @generated from protobuf field: repeated string Fields = 5 [json_name = "Fields"];
     */
    fields: string[];
    /**
     * @generated from protobuf field: string ListSeparator = 6 [json_name = "ListSeparator"];
     */
    listSeparator: string;
    /**
     * @generated from protobuf field: string DecimalSeparator = 7 [json_name = "DecimalSeparator"];
     */
    decimalSeparator: string;
    /**
     * @generated from protobuf field: repeated string ColumnNames = 8 [json_name = "ColumnNames"];
     */
    columnNames: string[];
    /**
     * @generated from protobuf field: map<string, api.TranslationMap> ColumnTranslationMaps = 10 [json_name = "ColumnTranslationMaps"];
     */
    columnTranslationMaps: {
        [key: string]: TranslationMap;
    };
    /**
     * @generated from protobuf field: map<int32, api.ExtractColumnFormat> ColumnFormats = 11 [json_name = "ColumnFormats"];
     */
    columnFormats: {
        [key: number]: ExtractColumnFormat;
    };
    /**
     * @generated from protobuf field: string TargetTimeZone = 12 [json_name = "TargetTimeZone"];
     */
    targetTimeZone: string;
}
/**
 * @generated from protobuf message api.StartWorkflowExtractDataFromDBResult
 */
export interface StartWorkflowExtractDataFromDBResult {
    /**
     * @generated from protobuf field: api.WorkflowExecutionResult WorkflowExecution = 1 [json_name = "WorkflowExecution"];
     */
    workflowExecution?: WorkflowExecutionResult;
}
/**
 * @generated from protobuf message api.StartWorkflowExtractKPIRequest
 */
export interface StartWorkflowExtractKPIRequest {
    /**
     * @generated from protobuf field: string ProjectId = 1 [json_name = "ProjectId"];
     */
    projectId: string;
    /**
     * @generated from protobuf field: string UserId = 2 [json_name = "UserId"];
     */
    userId: string;
    /**
     * @generated from protobuf field: api.CHQueryType QueryType = 3 [json_name = "QueryType"];
     */
    queryType: CHQueryType;
    /**
     * @generated from protobuf field: string QueryBlock = 4 [json_name = "QueryBlock"];
     */
    queryBlock: string;
    /**
     * @generated from protobuf field: repeated api.EntityBlockFilter EntityBlockFilters = 5 [json_name = "EntityBlockFilters"];
     */
    entityBlockFilters: EntityBlockFilter[];
    /**
     * @generated from protobuf field: api.CHFilter Filter = 6 [json_name = "Filter"];
     */
    filter?: CHFilter;
    /**
     * @generated from protobuf field: repeated api.CHDimension Dimensions = 7 [json_name = "Dimensions"];
     */
    dimensions: CHDimension[];
    /**
     * @generated from protobuf field: repeated api.CHMetric Metrics = 8 [json_name = "Metrics"];
     */
    metrics: CHMetric[];
    /**
     * @generated from protobuf field: string TargetTimeZone = 9 [json_name = "TargetTimeZone"];
     */
    targetTimeZone: string;
    /**
     * @generated from protobuf field: string KpiGroupName = 10 [json_name = "KpiGroupName"];
     */
    kpiGroupName: string;
    /**
     * @generated from protobuf field: string TargetDomain = 11 [json_name = "TargetDomain"];
     */
    targetDomain: string;
    /**
     * @generated from protobuf field: string TargetType = 12 [json_name = "TargetType"];
     */
    targetType: string;
    /**
     * @generated from protobuf field: repeated string Fields = 13 [json_name = "Fields"];
     */
    fields: string[];
    /**
     * @generated from protobuf field: string ListSeparator = 14 [json_name = "ListSeparator"];
     */
    listSeparator: string;
    /**
     * @generated from protobuf field: string DecimalSeparator = 15 [json_name = "DecimalSeparator"];
     */
    decimalSeparator: string;
    /**
     * @generated from protobuf field: repeated string ColumnNames = 16 [json_name = "ColumnNames"];
     */
    columnNames: string[];
    /**
     * @generated from protobuf field: map<string, api.TranslationMap> ColumnTranslationMaps = 17 [json_name = "ColumnTranslationMaps"];
     */
    columnTranslationMaps: {
        [key: string]: TranslationMap;
    };
    /**
     * @generated from protobuf field: repeated int32 FieldIdxLVDetailedQuantity = 18 [json_name = "FieldIdxLVDetailedQuantity"];
     */
    fieldIdxLVDetailedQuantity: number[];
    /**
     * @generated from protobuf field: map<int32, api.ExtractColumnFormat> ColumnFormats = 19 [json_name = "ColumnFormats"];
     */
    columnFormats: {
        [key: number]: ExtractColumnFormat;
    };
}
/**
 * @generated from protobuf message api.StartWorkflowExtractKPIResult
 */
export interface StartWorkflowExtractKPIResult {
    /**
     * @generated from protobuf field: api.WorkflowExecutionResult WorkflowExecution = 1 [json_name = "WorkflowExecution"];
     */
    workflowExecution?: WorkflowExecutionResult;
}
/**
 * @generated from protobuf message api.RegisterModuleWorkflowsRequest
 */
export interface RegisterModuleWorkflowsRequest {
    /**
     * @generated from protobuf field: repeated api.ModuleRegistration ModuleRegistrations = 1 [json_name = "ModuleRegistrations"];
     */
    moduleRegistrations: ModuleRegistration[];
    /**
     * @generated from protobuf field: string Tasklist = 2 [json_name = "Tasklist"];
     */
    tasklist: string;
}
/**
 * @generated from protobuf message api.RegisterModuleWorkflowsResult
 */
export interface RegisterModuleWorkflowsResult {
}
/**
 * @generated from protobuf message api.DeregisterModuleWorkflowsRequest
 */
export interface DeregisterModuleWorkflowsRequest {
    /**
     * @generated from protobuf field: repeated api.ModuleDeregistration ModuleDeregistrations = 1 [json_name = "ModuleDeregistrations"];
     */
    moduleDeregistrations: ModuleDeregistration[];
    /**
     * @generated from protobuf field: string Tasklist = 2 [json_name = "Tasklist"];
     */
    tasklist: string;
}
/**
 * @generated from protobuf message api.DeregisterModuleWorkflowsResult
 */
export interface DeregisterModuleWorkflowsResult {
}
/**
 * @generated from protobuf message api.ModuleWorkflow
 */
export interface ModuleWorkflow {
    /**
     * @generated from protobuf field: api.WorkflowTypeEnum WorkflowTarget = 1 [json_name = "WorkflowTarget"];
     */
    workflowTarget: WorkflowTypeEnum;
    /**
     * @generated from protobuf field: string WorkflowPath = 2 [json_name = "WorkflowPath"];
     */
    workflowPath: string;
    /**
     * @generated from protobuf field: api.ModuleWorkflowTypeEnum Type = 3 [json_name = "Type"];
     */
    type: ModuleWorkflowTypeEnum;
    /**
     * @generated from protobuf field: int32 Timeout = 4 [json_name = "Timeout"];
     */
    timeout: number;
    /**
     * @generated from protobuf field: string Tasklist = 5 [json_name = "Tasklist"];
     */
    tasklist: string;
}
/**
 * @generated from protobuf message api.GetModuleWorkflowsRequest
 */
export interface GetModuleWorkflowsRequest {
    /**
     * @generated from protobuf field: api.WorkflowTypeEnum WorkflowTarget = 1 [json_name = "WorkflowTarget"];
     */
    workflowTarget: WorkflowTypeEnum;
}
/**
 * @generated from protobuf message api.GetModuleWorkflowsResult
 */
export interface GetModuleWorkflowsResult {
    /**
     * @generated from protobuf field: repeated api.ModuleWorkflow ModuleWorkflows = 1 [json_name = "ModuleWorkflows"];
     */
    moduleWorkflows: ModuleWorkflow[];
}
/**
 * @generated from protobuf message api.StopWorkflowRequest
 */
export interface StopWorkflowRequest {
    /**
     * @generated from protobuf field: string WorkflowId = 1 [json_name = "WorkflowId"];
     */
    workflowId: string;
    /**
     * @generated from protobuf field: string RunId = 2 [json_name = "RunId"];
     */
    runId: string;
    /**
     * @generated from protobuf field: string Domain = 3 [json_name = "Domain"];
     */
    domain: string;
}
/**
 * @generated from protobuf message api.StopWorkflowResult
 */
export interface StopWorkflowResult {
}
/**
 * @generated from protobuf message api.StartWorkflowOptimizeClickhouseRequest
 */
export interface StartWorkflowOptimizeClickhouseRequest {
    /**
     * @generated from protobuf field: bool Final = 1 [json_name = "Final"];
     */
    final: boolean;
    /**
     * @generated from protobuf field: string CronSchedule = 2 [json_name = "CronSchedule"];
     */
    cronSchedule: string;
}
/**
 * @generated from protobuf message api.StartWorkflowOptimizeClickhouseResult
 */
export interface StartWorkflowOptimizeClickhouseResult {
    /**
     * @generated from protobuf field: api.WorkflowExecutionResult WorkflowExecution = 1 [json_name = "WorkflowExecution"];
     */
    workflowExecution?: WorkflowExecutionResult;
}
/**
 * @generated from protobuf message api.StartWorkflowCreateOrganisationRequest
 */
export interface StartWorkflowCreateOrganisationRequest {
    /**
     * @generated from protobuf field: string OrganisationID = 1 [json_name = "OrganisationID"];
     */
    organisationID: string;
    /**
     * @generated from protobuf field: string ManagerEmail = 2 [json_name = "ManagerEmail"];
     */
    managerEmail: string;
    /**
     * @generated from protobuf field: string UserSub = 3 [json_name = "UserSub"];
     */
    userSub: string;
    /**
     * @generated from protobuf field: repeated api.Module Modules = 4 [json_name = "Modules"];
     */
    modules: Module[];
}
/**
 * @generated from protobuf message api.StartWorkflowCreateOrganisationResult
 */
export interface StartWorkflowCreateOrganisationResult {
    /**
     * @generated from protobuf field: api.WorkflowExecutionResult WorkflowExecution = 1 [json_name = "WorkflowExecution"];
     */
    workflowExecution?: WorkflowExecutionResult;
}
/**
 * @generated from protobuf message api.StartWorkflowDeleteOrganisationRequest
 */
export interface StartWorkflowDeleteOrganisationRequest {
    /**
     * @generated from protobuf field: string OrganisationID = 1 [json_name = "OrganisationID"];
     */
    organisationID: string;
    /**
     * @generated from protobuf field: string UserID = 2 [json_name = "UserID"];
     */
    userID: string;
}
/**
 * @generated from protobuf message api.StartWorkflowDeleteOrganisationResult
 */
export interface StartWorkflowDeleteOrganisationResult {
    /**
     * @generated from protobuf field: api.WorkflowExecutionResult WorkflowExecution = 1 [json_name = "WorkflowExecution"];
     */
    workflowExecution?: WorkflowExecutionResult;
}
/**
 * @generated from protobuf message api.StartWorkflowRecoverDataRequest
 */
export interface StartWorkflowRecoverDataRequest {
    /**
     * @generated from protobuf field: string ProjectID = 1 [json_name = "ProjectID"];
     */
    projectID: string;
    /**
     * @generated from protobuf field: api.ModelDataSetEnum Entity = 2 [json_name = "Entity"];
     */
    entity: ModelDataSetEnum;
    /**
     * @generated from protobuf field: api.RecoverType RecoveryType = 3 [json_name = "RecoveryType"];
     */
    recoveryType: RecoverType;
    /**
     * @generated from protobuf field: bool ClearEntityData = 4 [json_name = "ClearEntityData"];
     */
    clearEntityData: boolean;
    /**
     * @generated from protobuf field: bool RestartJob = 6 [json_name = "RestartJob"];
     */
    restartJob: boolean;
    /**
     * @generated from protobuf field: string OrganisationID = 7 [json_name = "OrganisationID"];
     */
    organisationID: string;
}
/**
 * @generated from protobuf message api.StartWorkflowRecoverDataResult
 */
export interface StartWorkflowRecoverDataResult {
    /**
     * @generated from protobuf field: api.WorkflowExecutionResult WorkflowExecution = 1 [json_name = "WorkflowExecution"];
     */
    workflowExecution?: WorkflowExecutionResult;
}
/**
 * @generated from protobuf message api.StartWorkflowCheckAndLaunchRecoverDataRequest
 */
export interface StartWorkflowCheckAndLaunchRecoverDataRequest {
    /**
     * @generated from protobuf field: api.ModelDataSetEnum Entity = 1 [json_name = "Entity"];
     */
    entity: ModelDataSetEnum;
    /**
     * @generated from protobuf field: api.RecoverType RecoveryType = 2 [json_name = "RecoveryType"];
     */
    recoveryType: RecoverType;
}
/**
 * @generated from protobuf message api.StartWorkflowCheckAndLaunchRecoverDataResult
 */
export interface StartWorkflowCheckAndLaunchRecoverDataResult {
    /**
     * @generated from protobuf field: api.WorkflowExecutionResult WorkflowExecution = 1 [json_name = "WorkflowExecution"];
     */
    workflowExecution?: WorkflowExecutionResult;
}
/**
 * @generated from protobuf message api.StartWorkflowUpdateMaterializedViewRequest
 */
export interface StartWorkflowUpdateMaterializedViewRequest {
    /**
     * @generated from protobuf field: string ProjectID = 1 [json_name = "ProjectID"];
     */
    projectID: string;
    /**
     * @generated from protobuf field: string OrganisationID = 2 [json_name = "OrganisationID"];
     */
    organisationID: string;
}
/**
 * @generated from protobuf message api.StartWorkflowUpdateMaterializedViewResult
 */
export interface StartWorkflowUpdateMaterializedViewResult {
    /**
     * @generated from protobuf field: api.WorkflowExecutionResult WorkflowExecution = 1 [json_name = "WorkflowExecution"];
     */
    workflowExecution?: WorkflowExecutionResult;
}
/**
 * @generated from protobuf message api.GetWorkflowStateRequest
 */
export interface GetWorkflowStateRequest {
    /**
     * @generated from protobuf field: api.WorkflowExecutionResult WorkflowExecution = 1 [json_name = "WorkflowExecution"];
     */
    workflowExecution?: WorkflowExecutionResult;
}
/**
 * @generated from protobuf message api.GetWorkflowStateResult
 */
export interface GetWorkflowStateResult {
    /**
     * @generated from protobuf field: string State = 1 [json_name = "State"];
     */
    state: string;
}
/**
 * @generated from protobuf message api.GetWorkflowExecutionInformationsRequest
 */
export interface GetWorkflowExecutionInformationsRequest {
    /**
     * @generated from protobuf field: api.WorkflowExecutionResult WorkflowExecution = 1 [json_name = "WorkflowExecution"];
     */
    workflowExecution?: WorkflowExecutionResult;
}
/**
 * @generated from protobuf message api.GetWorkflowExecutionInformationsResult
 */
export interface GetWorkflowExecutionInformationsResult {
    /**
     * @generated from protobuf field: string WorkflowExecutionInformations = 1 [json_name = "WorkflowExecutionInformations"];
     */
    workflowExecutionInformations: string;
}
/**
 * @generated from protobuf message api.StartWorkflowDailyProjectsOperationsRequest
 */
export interface StartWorkflowDailyProjectsOperationsRequest {
}
/**
 * @generated from protobuf message api.StartWorkflowDailyProjectsOperationsResult
 */
export interface StartWorkflowDailyProjectsOperationsResult {
    /**
     * @generated from protobuf field: api.WorkflowExecutionResult WorkflowExecution = 1 [json_name = "WorkflowExecution"];
     */
    workflowExecution?: WorkflowExecutionResult;
}
/**
 * @generated from protobuf message api.StartWorkflowHealthCheckWorkflowsRequest
 */
export interface StartWorkflowHealthCheckWorkflowsRequest {
}
/**
 * @generated from protobuf message api.StartWorkflowHealthCheckWorkflowsResult
 */
export interface StartWorkflowHealthCheckWorkflowsResult {
    /**
     * @generated from protobuf field: api.WorkflowExecutionResult WorkflowExecution = 1 [json_name = "WorkflowExecution"];
     */
    workflowExecution?: WorkflowExecutionResult;
}
/**
 * @generated from protobuf message api.StartWorkflowPruneDataRequest
 */
export interface StartWorkflowPruneDataRequest {
    /**
     * @generated from protobuf field: string OrganisationID = 1 [json_name = "OrganisationID"];
     */
    organisationID: string;
    /**
     * @generated from protobuf field: string ProjectID = 2 [json_name = "ProjectID"];
     */
    projectID: string;
    /**
     * @generated from protobuf field: api.ModelDataSetEnum Entity = 3 [json_name = "Entity"];
     */
    entity: ModelDataSetEnum;
}
/**
 * @generated from protobuf message api.StartWorkflowPruneDataResult
 */
export interface StartWorkflowPruneDataResult {
    /**
     * @generated from protobuf field: api.WorkflowExecutionResult WorkflowExecution = 1 [json_name = "WorkflowExecution"];
     */
    workflowExecution?: WorkflowExecutionResult;
}
/**
 * @generated from protobuf message api.StartWorkflowSynchronizeRulesOnGitRequest
 */
export interface StartWorkflowSynchronizeRulesOnGitRequest {
}
/**
 * @generated from protobuf message api.StartWorkflowSynchronizeRulesOnGitResult
 */
export interface StartWorkflowSynchronizeRulesOnGitResult {
    /**
     * @generated from protobuf field: api.WorkflowExecutionResult WorkflowExecution = 1 [json_name = "WorkflowExecution"];
     */
    workflowExecution?: WorkflowExecutionResult;
}
/**
 * @generated from protobuf message api.StartWorkflowAnonymizeDataRequest
 */
export interface StartWorkflowAnonymizeDataRequest {
    /**
     * @generated from protobuf field: string OrganisationID = 1 [json_name = "OrganisationID"];
     */
    organisationID: string;
    /**
     * @generated from protobuf field: string ProjectID = 2 [json_name = "ProjectID"];
     */
    projectID: string;
    /**
     * @generated from protobuf field: api.ModelDataSetEnum Entity = 3 [json_name = "Entity"];
     */
    entity: ModelDataSetEnum;
}
/**
 * @generated from protobuf message api.StartWorkflowAnonymizeDataResult
 */
export interface StartWorkflowAnonymizeDataResult {
    /**
     * @generated from protobuf field: api.WorkflowExecutionResult WorkflowExecution = 1 [json_name = "WorkflowExecution"];
     */
    workflowExecution?: WorkflowExecutionResult;
}
/**
 * @generated from protobuf enum api.WorkflowStatusEnum
 */
export enum WorkflowStatusEnum {
    /**
     * @generated from protobuf enum value: WORKFLOW_STATUS_UNKNOWN = 0;
     */
    WORKFLOW_STATUS_UNKNOWN = 0,
    /**
     * @generated from protobuf enum value: WORKFLOW_STATUS_FAILED = 1;
     */
    WORKFLOW_STATUS_FAILED = 1,
    /**
     * @generated from protobuf enum value: WORKFLOW_STATUS_SUCCESS = 2;
     */
    WORKFLOW_STATUS_SUCCESS = 2
}
// @generated message type with reflection information, may provide speed optimized methods
class RetryWorkflowRequest$Type extends MessageType<RetryWorkflowRequest> {
    constructor() {
        super("api.RetryWorkflowRequest", [
            { no: 1, name: "WorkflowId", kind: "scalar", jsonName: "WorkflowId", T: 9 /*ScalarType.STRING*/, options: { "validate.rules": { string: { minLen: "1" } } } },
            { no: 2, name: "RunId", kind: "scalar", jsonName: "RunId", T: 9 /*ScalarType.STRING*/, options: { "validate.rules": { string: { minLen: "1" } } } },
            { no: 3, name: "Domain", kind: "scalar", jsonName: "Domain", T: 9 /*ScalarType.STRING*/, options: { "validate.rules": { string: { minLen: "1" } } } }
        ], { "grpc.gateway.protoc_gen_openapiv2.options.openapiv2_schema": { jsonSchema: { required: ["WorkflowId", "RunId"] } } });
    }
    create(value?: PartialMessage<RetryWorkflowRequest>): RetryWorkflowRequest {
        const message = globalThis.Object.create((this.messagePrototype!));
        message.workflowId = "";
        message.runId = "";
        message.domain = "";
        if (value !== undefined)
            reflectionMergePartial<RetryWorkflowRequest>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: RetryWorkflowRequest): RetryWorkflowRequest {
        let message = target ?? this.create(), end = reader.pos + length;
        while (reader.pos < end) {
            let [fieldNo, wireType] = reader.tag();
            switch (fieldNo) {
                case /* string WorkflowId = 1 [json_name = "WorkflowId"];*/ 1:
                    message.workflowId = reader.string();
                    break;
                case /* string RunId = 2 [json_name = "RunId"];*/ 2:
                    message.runId = reader.string();
                    break;
                case /* string Domain = 3 [json_name = "Domain"];*/ 3:
                    message.domain = 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: RetryWorkflowRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
        /* string WorkflowId = 1 [json_name = "WorkflowId"]; */
        if (message.workflowId !== "")
            writer.tag(1, WireType.LengthDelimited).string(message.workflowId);
        /* string RunId = 2 [json_name = "RunId"]; */
        if (message.runId !== "")
            writer.tag(2, WireType.LengthDelimited).string(message.runId);
        /* string Domain = 3 [json_name = "Domain"]; */
        if (message.domain !== "")
            writer.tag(3, WireType.LengthDelimited).string(message.domain);
        let u = options.writeUnknownFields;
        if (u !== false)
            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
        return writer;
    }
}
/**
 * @generated MessageType for protobuf message api.RetryWorkflowRequest
 */
export const RetryWorkflowRequest = new RetryWorkflowRequest$Type();
// @generated message type with reflection information, may provide speed optimized methods
class RetryWorkflowResult$Type extends MessageType<RetryWorkflowResult> {
    constructor() {
        super("api.RetryWorkflowResult", [
            { no: 1, name: "WorkflowExecution", kind: "message", jsonName: "WorkflowExecution", T: () => WorkflowExecutionResult }
        ]);
    }
    create(value?: PartialMessage<RetryWorkflowResult>): RetryWorkflowResult {
        const message = globalThis.Object.create((this.messagePrototype!));
        if (value !== undefined)
            reflectionMergePartial<RetryWorkflowResult>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: RetryWorkflowResult): RetryWorkflowResult {
        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: RetryWorkflowResult, 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.RetryWorkflowResult
 */
export const RetryWorkflowResult = new RetryWorkflowResult$Type();
// @generated message type with reflection information, may provide speed optimized methods
class StartWorkflowCreateProjectRequest$Type extends MessageType<StartWorkflowCreateProjectRequest> {
    constructor() {
        super("api.StartWorkflowCreateProjectRequest", [
            { no: 1, name: "OrganisationId", kind: "scalar", jsonName: "OrganisationId", T: 9 /*ScalarType.STRING*/, options: { "validate.rules": { string: { minLen: "1" } } } },
            { no: 2, name: "ProjectId", kind: "scalar", jsonName: "ProjectId", T: 9 /*ScalarType.STRING*/, options: { "validate.rules": { string: { minLen: "1" } } } },
            { no: 3, name: "UserSub", kind: "scalar", jsonName: "UserSub", T: 9 /*ScalarType.STRING*/, options: { "validate.rules": { string: { minLen: "1" } } } },
            { no: 4, name: "ManagerEmail", kind: "scalar", jsonName: "ManagerEmail", T: 9 /*ScalarType.STRING*/, options: { "validate.rules": { string: { minLen: "1" } } } },
            { no: 5, name: "Modules", kind: "message", jsonName: "Modules", repeat: 1 /*RepeatType.PACKED*/, T: () => Module }
        ], { "grpc.gateway.protoc_gen_openapiv2.options.openapiv2_schema": { jsonSchema: { required: ["OrganisationId", "ProjectId", "UserSub", "ManagerEmail"] } } });
    }
    create(value?: PartialMessage<StartWorkflowCreateProjectRequest>): StartWorkflowCreateProjectRequest {
        const message = globalThis.Object.create((this.messagePrototype!));
        message.organisationId = "";
        message.projectId = "";
        message.userSub = "";
        message.managerEmail = "";
        message.modules = [];
        if (value !== undefined)
            reflectionMergePartial<StartWorkflowCreateProjectRequest>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: StartWorkflowCreateProjectRequest): StartWorkflowCreateProjectRequest {
        let message = target ?? this.create(), end = reader.pos + length;
        while (reader.pos < end) {
            let [fieldNo, wireType] = reader.tag();
            switch (fieldNo) {
                case /* string OrganisationId = 1 [json_name = "OrganisationId"];*/ 1:
                    message.organisationId = reader.string();
                    break;
                case /* string ProjectId = 2 [json_name = "ProjectId"];*/ 2:
                    message.projectId = reader.string();
                    break;
                case /* string UserSub = 3 [json_name = "UserSub"];*/ 3:
                    message.userSub = reader.string();
                    break;
                case /* string ManagerEmail = 4 [json_name = "ManagerEmail"];*/ 4:
                    message.managerEmail = reader.string();
                    break;
                case /* repeated api.Module Modules = 5 [json_name = "Modules"];*/ 5:
                    message.modules.push(Module.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: StartWorkflowCreateProjectRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
        /* string OrganisationId = 1 [json_name = "OrganisationId"]; */
        if (message.organisationId !== "")
            writer.tag(1, WireType.LengthDelimited).string(message.organisationId);
        /* string ProjectId = 2 [json_name = "ProjectId"]; */
        if (message.projectId !== "")
            writer.tag(2, WireType.LengthDelimited).string(message.projectId);
        /* string UserSub = 3 [json_name = "UserSub"]; */
        if (message.userSub !== "")
            writer.tag(3, WireType.LengthDelimited).string(message.userSub);
        /* string ManagerEmail = 4 [json_name = "ManagerEmail"]; */
        if (message.managerEmail !== "")
            writer.tag(4, WireType.LengthDelimited).string(message.managerEmail);
        /* repeated api.Module Modules = 5 [json_name = "Modules"]; */
        for (let i = 0; i < message.modules.length; i++)
            Module.internalBinaryWrite(message.modules[i], writer.tag(5, 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.StartWorkflowCreateProjectRequest
 */
export const StartWorkflowCreateProjectRequest = new StartWorkflowCreateProjectRequest$Type();
// @generated message type with reflection information, may provide speed optimized methods
class StartWorkflowCreateProjectResult$Type extends MessageType<StartWorkflowCreateProjectResult> {
    constructor() {
        super("api.StartWorkflowCreateProjectResult", [
            { no: 1, name: "WorkflowExecution", kind: "message", jsonName: "WorkflowExecution", T: () => WorkflowExecutionResult }
        ]);
    }
    create(value?: PartialMessage<StartWorkflowCreateProjectResult>): StartWorkflowCreateProjectResult {
        const message = globalThis.Object.create((this.messagePrototype!));
        if (value !== undefined)
            reflectionMergePartial<StartWorkflowCreateProjectResult>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: StartWorkflowCreateProjectResult): StartWorkflowCreateProjectResult {
        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: StartWorkflowCreateProjectResult, 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.StartWorkflowCreateProjectResult
 */
export const StartWorkflowCreateProjectResult = new StartWorkflowCreateProjectResult$Type();
// @generated message type with reflection information, may provide speed optimized methods
class StartWorkflowDeleteProjectRequest$Type extends MessageType<StartWorkflowDeleteProjectRequest> {
    constructor() {
        super("api.StartWorkflowDeleteProjectRequest", [
            { no: 1, name: "OrganisationId", kind: "scalar", jsonName: "OrganisationId", T: 9 /*ScalarType.STRING*/, options: { "validate.rules": { string: { minLen: "1" } } } },
            { no: 2, name: "ProjectId", kind: "scalar", jsonName: "ProjectId", T: 9 /*ScalarType.STRING*/, options: { "validate.rules": { string: { minLen: "1" } } } },
            { no: 3, name: "UserId", kind: "scalar", jsonName: "UserId", T: 9 /*ScalarType.STRING*/, options: { "validate.rules": { string: { minLen: "1" } } } }
        ], { "grpc.gateway.protoc_gen_openapiv2.options.openapiv2_schema": { jsonSchema: { required: ["OrganisationId", "ProjectId", "UserId"] } } });
    }
    create(value?: PartialMessage<StartWorkflowDeleteProjectRequest>): StartWorkflowDeleteProjectRequest {
        const message = globalThis.Object.create((this.messagePrototype!));
        message.organisationId = "";
        message.projectId = "";
        message.userId = "";
        if (value !== undefined)
            reflectionMergePartial<StartWorkflowDeleteProjectRequest>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: StartWorkflowDeleteProjectRequest): StartWorkflowDeleteProjectRequest {
        let message = target ?? this.create(), end = reader.pos + length;
        while (reader.pos < end) {
            let [fieldNo, wireType] = reader.tag();
            switch (fieldNo) {
                case /* string OrganisationId = 1 [json_name = "OrganisationId"];*/ 1:
                    message.organisationId = reader.string();
                    break;
                case /* string ProjectId = 2 [json_name = "ProjectId"];*/ 2:
                    message.projectId = reader.string();
                    break;
                case /* string UserId = 3 [json_name = "UserId"];*/ 3:
                    message.userId = 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: StartWorkflowDeleteProjectRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
        /* string OrganisationId = 1 [json_name = "OrganisationId"]; */
        if (message.organisationId !== "")
            writer.tag(1, WireType.LengthDelimited).string(message.organisationId);
        /* string ProjectId = 2 [json_name = "ProjectId"]; */
        if (message.projectId !== "")
            writer.tag(2, WireType.LengthDelimited).string(message.projectId);
        /* string UserId = 3 [json_name = "UserId"]; */
        if (message.userId !== "")
            writer.tag(3, WireType.LengthDelimited).string(message.userId);
        let u = options.writeUnknownFields;
        if (u !== false)
            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
        return writer;
    }
}
/**
 * @generated MessageType for protobuf message api.StartWorkflowDeleteProjectRequest
 */
export const StartWorkflowDeleteProjectRequest = new StartWorkflowDeleteProjectRequest$Type();
// @generated message type with reflection information, may provide speed optimized methods
class StartWorkflowDeleteProjectResult$Type extends MessageType<StartWorkflowDeleteProjectResult> {
    constructor() {
        super("api.StartWorkflowDeleteProjectResult", [
            { no: 1, name: "WorkflowExecution", kind: "message", jsonName: "WorkflowExecution", T: () => WorkflowExecutionResult }
        ]);
    }
    create(value?: PartialMessage<StartWorkflowDeleteProjectResult>): StartWorkflowDeleteProjectResult {
        const message = globalThis.Object.create((this.messagePrototype!));
        if (value !== undefined)
            reflectionMergePartial<StartWorkflowDeleteProjectResult>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: StartWorkflowDeleteProjectResult): StartWorkflowDeleteProjectResult {
        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: StartWorkflowDeleteProjectResult, 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.StartWorkflowDeleteProjectResult
 */
export const StartWorkflowDeleteProjectResult = new StartWorkflowDeleteProjectResult$Type();
// @generated message type with reflection information, may provide speed optimized methods
class StartWorkflowDeleteCoreRequest$Type extends MessageType<StartWorkflowDeleteCoreRequest> {
    constructor() {
        super("api.StartWorkflowDeleteCoreRequest", [
            { no: 1, name: "OrganisationId", kind: "scalar", jsonName: "OrganisationId", T: 9 /*ScalarType.STRING*/, options: { "validate.rules": { string: { minLen: "1" } } } },
            { no: 2, name: "ProjectId", kind: "scalar", jsonName: "ProjectId", T: 9 /*ScalarType.STRING*/, options: { "validate.rules": { string: { minLen: "1" } } } }
        ], { "grpc.gateway.protoc_gen_openapiv2.options.openapiv2_schema": { jsonSchema: { required: ["OrganisationId", "ProjectId"] } } });
    }
    create(value?: PartialMessage<StartWorkflowDeleteCoreRequest>): StartWorkflowDeleteCoreRequest {
        const message = globalThis.Object.create((this.messagePrototype!));
        message.organisationId = "";
        message.projectId = "";
        if (value !== undefined)
            reflectionMergePartial<StartWorkflowDeleteCoreRequest>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: StartWorkflowDeleteCoreRequest): StartWorkflowDeleteCoreRequest {
        let message = target ?? this.create(), end = reader.pos + length;
        while (reader.pos < end) {
            let [fieldNo, wireType] = reader.tag();
            switch (fieldNo) {
                case /* string OrganisationId = 1 [json_name = "OrganisationId"];*/ 1:
                    message.organisationId = reader.string();
                    break;
                case /* string ProjectId = 2 [json_name = "ProjectId"];*/ 2:
                    message.projectId = 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: StartWorkflowDeleteCoreRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
        /* string OrganisationId = 1 [json_name = "OrganisationId"]; */
        if (message.organisationId !== "")
            writer.tag(1, WireType.LengthDelimited).string(message.organisationId);
        /* string ProjectId = 2 [json_name = "ProjectId"]; */
        if (message.projectId !== "")
            writer.tag(2, WireType.LengthDelimited).string(message.projectId);
        let u = options.writeUnknownFields;
        if (u !== false)
            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
        return writer;
    }
}
/**
 * @generated MessageType for protobuf message api.StartWorkflowDeleteCoreRequest
 */
export const StartWorkflowDeleteCoreRequest = new StartWorkflowDeleteCoreRequest$Type();
// @generated message type with reflection information, may provide speed optimized methods
class StartWorkflowDeleteCoreResult$Type extends MessageType<StartWorkflowDeleteCoreResult> {
    constructor() {
        super("api.StartWorkflowDeleteCoreResult", [
            { no: 1, name: "WorkflowExecution", kind: "message", jsonName: "WorkflowExecution", T: () => WorkflowExecutionResult }
        ]);
    }
    create(value?: PartialMessage<StartWorkflowDeleteCoreResult>): StartWorkflowDeleteCoreResult {
        const message = globalThis.Object.create((this.messagePrototype!));
        if (value !== undefined)
            reflectionMergePartial<StartWorkflowDeleteCoreResult>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: StartWorkflowDeleteCoreResult): StartWorkflowDeleteCoreResult {
        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: StartWorkflowDeleteCoreResult, 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.StartWorkflowDeleteCoreResult
 */
export const StartWorkflowDeleteCoreResult = new StartWorkflowDeleteCoreResult$Type();
// @generated message type with reflection information, may provide speed optimized methods
class StartWorkflowDeletePartnerAppRequest$Type extends MessageType<StartWorkflowDeletePartnerAppRequest> {
    constructor() {
        super("api.StartWorkflowDeletePartnerAppRequest", [
            { no: 1, name: "OrganisationId", kind: "scalar", jsonName: "OrganisationId", T: 9 /*ScalarType.STRING*/, options: { "validate.rules": { string: { minLen: "1" } } } },
            { no: 2, name: "ProjectId", kind: "scalar", jsonName: "ProjectId", T: 9 /*ScalarType.STRING*/, options: { "validate.rules": { string: { minLen: "1" } } } },
            { no: 3, name: "PartnerAppId", kind: "scalar", jsonName: "PartnerAppId", T: 9 /*ScalarType.STRING*/, options: { "validate.rules": { string: { minLen: "1" } } } },
            { no: 4, name: "UserId", kind: "scalar", jsonName: "UserId", T: 9 /*ScalarType.STRING*/, options: { "validate.rules": { string: { minLen: "1" } } } }
        ], { "grpc.gateway.protoc_gen_openapiv2.options.openapiv2_schema": { jsonSchema: { required: ["OrganisationId", "ProjectId", "PartnerAppId", "UserId"] } } });
    }
    create(value?: PartialMessage<StartWorkflowDeletePartnerAppRequest>): StartWorkflowDeletePartnerAppRequest {
        const message = globalThis.Object.create((this.messagePrototype!));
        message.organisationId = "";
        message.projectId = "";
        message.partnerAppId = "";
        message.userId = "";
        if (value !== undefined)
            reflectionMergePartial<StartWorkflowDeletePartnerAppRequest>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: StartWorkflowDeletePartnerAppRequest): StartWorkflowDeletePartnerAppRequest {
        let message = target ?? this.create(), end = reader.pos + length;
        while (reader.pos < end) {
            let [fieldNo, wireType] = reader.tag();
            switch (fieldNo) {
                case /* string OrganisationId = 1 [json_name = "OrganisationId"];*/ 1:
                    message.organisationId = reader.string();
                    break;
                case /* string ProjectId = 2 [json_name = "ProjectId"];*/ 2:
                    message.projectId = reader.string();
                    break;
                case /* string PartnerAppId = 3 [json_name = "PartnerAppId"];*/ 3:
                    message.partnerAppId = reader.string();
                    break;
                case /* string UserId = 4 [json_name = "UserId"];*/ 4:
                    message.userId = 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: StartWorkflowDeletePartnerAppRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
        /* string OrganisationId = 1 [json_name = "OrganisationId"]; */
        if (message.organisationId !== "")
            writer.tag(1, WireType.LengthDelimited).string(message.organisationId);
        /* string ProjectId = 2 [json_name = "ProjectId"]; */
        if (message.projectId !== "")
            writer.tag(2, WireType.LengthDelimited).string(message.projectId);
        /* string PartnerAppId = 3 [json_name = "PartnerAppId"]; */
        if (message.partnerAppId !== "")
            writer.tag(3, WireType.LengthDelimited).string(message.partnerAppId);
        /* string UserId = 4 [json_name = "UserId"]; */
        if (message.userId !== "")
            writer.tag(4, WireType.LengthDelimited).string(message.userId);
        let u = options.writeUnknownFields;
        if (u !== false)
            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
        return writer;
    }
}
/**
 * @generated MessageType for protobuf message api.StartWorkflowDeletePartnerAppRequest
 */
export const StartWorkflowDeletePartnerAppRequest = new StartWorkflowDeletePartnerAppRequest$Type();
// @generated message type with reflection information, may provide speed optimized methods
class StartWorkflowDeletePartnerAppResult$Type extends MessageType<StartWorkflowDeletePartnerAppResult> {
    constructor() {
        super("api.StartWorkflowDeletePartnerAppResult", [
            { no: 1, name: "WorkflowExecution", kind: "message", jsonName: "WorkflowExecution", T: () => WorkflowExecutionResult }
        ]);
    }
    create(value?: PartialMessage<StartWorkflowDeletePartnerAppResult>): StartWorkflowDeletePartnerAppResult {
        const message = globalThis.Object.create((this.messagePrototype!));
        if (value !== undefined)
            reflectionMergePartial<StartWorkflowDeletePartnerAppResult>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: StartWorkflowDeletePartnerAppResult): StartWorkflowDeletePartnerAppResult {
        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: StartWorkflowDeletePartnerAppResult, 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.StartWorkflowDeletePartnerAppResult
 */
export const StartWorkflowDeletePartnerAppResult = new StartWorkflowDeletePartnerAppResult$Type();
// @generated message type with reflection information, may provide speed optimized methods
class StartWorkflowDeleteConnectionRequest$Type extends MessageType<StartWorkflowDeleteConnectionRequest> {
    constructor() {
        super("api.StartWorkflowDeleteConnectionRequest", [
            { no: 1, name: "OrganisationId", kind: "scalar", jsonName: "OrganisationId", T: 9 /*ScalarType.STRING*/, options: { "validate.rules": { string: { minLen: "1" } } } },
            { no: 2, name: "ConnectionId", kind: "scalar", jsonName: "ConnectionId", T: 9 /*ScalarType.STRING*/, options: { "validate.rules": { string: { minLen: "1" } } } },
            { no: 3, name: "UserId", kind: "scalar", jsonName: "UserId", T: 9 /*ScalarType.STRING*/, options: { "validate.rules": { string: { minLen: "1" } } } }
        ], { "grpc.gateway.protoc_gen_openapiv2.options.openapiv2_schema": { jsonSchema: { required: ["OrganisationId", "ConnectionId", "UserId"] } } });
    }
    create(value?: PartialMessage<StartWorkflowDeleteConnectionRequest>): StartWorkflowDeleteConnectionRequest {
        const message = globalThis.Object.create((this.messagePrototype!));
        message.organisationId = "";
        message.connectionId = "";
        message.userId = "";
        if (value !== undefined)
            reflectionMergePartial<StartWorkflowDeleteConnectionRequest>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: StartWorkflowDeleteConnectionRequest): StartWorkflowDeleteConnectionRequest {
        let message = target ?? this.create(), end = reader.pos + length;
        while (reader.pos < end) {
            let [fieldNo, wireType] = reader.tag();
            switch (fieldNo) {
                case /* string OrganisationId = 1 [json_name = "OrganisationId"];*/ 1:
                    message.organisationId = reader.string();
                    break;
                case /* string ConnectionId = 2 [json_name = "ConnectionId"];*/ 2:
                    message.connectionId = reader.string();
                    break;
                case /* string UserId = 3 [json_name = "UserId"];*/ 3:
                    message.userId = 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: StartWorkflowDeleteConnectionRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
        /* string OrganisationId = 1 [json_name = "OrganisationId"]; */
        if (message.organisationId !== "")
            writer.tag(1, WireType.LengthDelimited).string(message.organisationId);
        /* string ConnectionId = 2 [json_name = "ConnectionId"]; */
        if (message.connectionId !== "")
            writer.tag(2, WireType.LengthDelimited).string(message.connectionId);
        /* string UserId = 3 [json_name = "UserId"]; */
        if (message.userId !== "")
            writer.tag(3, WireType.LengthDelimited).string(message.userId);
        let u = options.writeUnknownFields;
        if (u !== false)
            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
        return writer;
    }
}
/**
 * @generated MessageType for protobuf message api.StartWorkflowDeleteConnectionRequest
 */
export const StartWorkflowDeleteConnectionRequest = new StartWorkflowDeleteConnectionRequest$Type();
// @generated message type with reflection information, may provide speed optimized methods
class StartWorkflowDeleteConnectionResult$Type extends MessageType<StartWorkflowDeleteConnectionResult> {
    constructor() {
        super("api.StartWorkflowDeleteConnectionResult", [
            { no: 1, name: "WorkflowExecution", kind: "message", jsonName: "WorkflowExecution", T: () => WorkflowExecutionResult }
        ]);
    }
    create(value?: PartialMessage<StartWorkflowDeleteConnectionResult>): StartWorkflowDeleteConnectionResult {
        const message = globalThis.Object.create((this.messagePrototype!));
        if (value !== undefined)
            reflectionMergePartial<StartWorkflowDeleteConnectionResult>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: StartWorkflowDeleteConnectionResult): StartWorkflowDeleteConnectionResult {
        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: StartWorkflowDeleteConnectionResult, 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.StartWorkflowDeleteConnectionResult
 */
export const StartWorkflowDeleteConnectionResult = new StartWorkflowDeleteConnectionResult$Type();
// @generated message type with reflection information, may provide speed optimized methods
class StartWorkflowBillingRequest$Type extends MessageType<StartWorkflowBillingRequest> {
    constructor() {
        super("api.StartWorkflowBillingRequest", [
            { no: 1, name: "OrganisationId", kind: "scalar", jsonName: "OrganisationId", T: 9 /*ScalarType.STRING*/, options: { "validate.rules": { string: { minLen: "1" } } } }
        ], { "grpc.gateway.protoc_gen_openapiv2.options.openapiv2_schema": { jsonSchema: { required: ["OrganisationId"] } } });
    }
    create(value?: PartialMessage<StartWorkflowBillingRequest>): StartWorkflowBillingRequest {
        const message = globalThis.Object.create((this.messagePrototype!));
        message.organisationId = "";
        if (value !== undefined)
            reflectionMergePartial<StartWorkflowBillingRequest>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: StartWorkflowBillingRequest): StartWorkflowBillingRequest {
        let message = target ?? this.create(), end = reader.pos + length;
        while (reader.pos < end) {
            let [fieldNo, wireType] = reader.tag();
            switch (fieldNo) {
                case /* string OrganisationId = 1 [json_name = "OrganisationId"];*/ 1:
                    message.organisationId = 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: StartWorkflowBillingRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
        /* string OrganisationId = 1 [json_name = "OrganisationId"]; */
        if (message.organisationId !== "")
            writer.tag(1, WireType.LengthDelimited).string(message.organisationId);
        let u = options.writeUnknownFields;
        if (u !== false)
            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
        return writer;
    }
}
/**
 * @generated MessageType for protobuf message api.StartWorkflowBillingRequest
 */
export const StartWorkflowBillingRequest = new StartWorkflowBillingRequest$Type();
// @generated message type with reflection information, may provide speed optimized methods
class StartWorkflowBillingResult$Type extends MessageType<StartWorkflowBillingResult> {
    constructor() {
        super("api.StartWorkflowBillingResult", [
            { no: 1, name: "WorkflowExecution", kind: "message", jsonName: "WorkflowExecution", T: () => WorkflowExecutionResult }
        ]);
    }
    create(value?: PartialMessage<StartWorkflowBillingResult>): StartWorkflowBillingResult {
        const message = globalThis.Object.create((this.messagePrototype!));
        if (value !== undefined)
            reflectionMergePartial<StartWorkflowBillingResult>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: StartWorkflowBillingResult): StartWorkflowBillingResult {
        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: StartWorkflowBillingResult, 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.StartWorkflowBillingResult
 */
export const StartWorkflowBillingResult = new StartWorkflowBillingResult$Type();
// @generated message type with reflection information, may provide speed optimized methods
class StopWorkflowBillingRequest$Type extends MessageType<StopWorkflowBillingRequest> {
    constructor() {
        super("api.StopWorkflowBillingRequest", [
            { no: 1, name: "OrganisationId", kind: "scalar", jsonName: "OrganisationId", T: 9 /*ScalarType.STRING*/, options: { "validate.rules": { string: { minLen: "1" } } } }
        ], { "grpc.gateway.protoc_gen_openapiv2.options.openapiv2_schema": { jsonSchema: { required: ["OrganisationId"] } } });
    }
    create(value?: PartialMessage<StopWorkflowBillingRequest>): StopWorkflowBillingRequest {
        const message = globalThis.Object.create((this.messagePrototype!));
        message.organisationId = "";
        if (value !== undefined)
            reflectionMergePartial<StopWorkflowBillingRequest>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: StopWorkflowBillingRequest): StopWorkflowBillingRequest {
        let message = target ?? this.create(), end = reader.pos + length;
        while (reader.pos < end) {
            let [fieldNo, wireType] = reader.tag();
            switch (fieldNo) {
                case /* string OrganisationId = 1 [json_name = "OrganisationId"];*/ 1:
                    message.organisationId = 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: StopWorkflowBillingRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
        /* string OrganisationId = 1 [json_name = "OrganisationId"]; */
        if (message.organisationId !== "")
            writer.tag(1, WireType.LengthDelimited).string(message.organisationId);
        let u = options.writeUnknownFields;
        if (u !== false)
            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
        return writer;
    }
}
/**
 * @generated MessageType for protobuf message api.StopWorkflowBillingRequest
 */
export const StopWorkflowBillingRequest = new StopWorkflowBillingRequest$Type();
// @generated message type with reflection information, may provide speed optimized methods
class StopWorkflowBillingResult$Type extends MessageType<StopWorkflowBillingResult> {
    constructor() {
        super("api.StopWorkflowBillingResult", []);
    }
    create(value?: PartialMessage<StopWorkflowBillingResult>): StopWorkflowBillingResult {
        const message = globalThis.Object.create((this.messagePrototype!));
        if (value !== undefined)
            reflectionMergePartial<StopWorkflowBillingResult>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: StopWorkflowBillingResult): StopWorkflowBillingResult {
        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: StopWorkflowBillingResult, 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.StopWorkflowBillingResult
 */
export const StopWorkflowBillingResult = new StopWorkflowBillingResult$Type();
// @generated message type with reflection information, may provide speed optimized methods
class StartWorkflowExtractDataFromDBRequest$Type extends MessageType<StartWorkflowExtractDataFromDBRequest> {
    constructor() {
        super("api.StartWorkflowExtractDataFromDBRequest", [
            { no: 1, name: "UserId", kind: "scalar", jsonName: "UserId", T: 9 /*ScalarType.STRING*/, options: { "validate.rules": { string: { minLen: "1" } } } },
            { no: 2, name: "ProjectId", kind: "scalar", jsonName: "ProjectId", T: 9 /*ScalarType.STRING*/, options: { "validate.rules": { string: { minLen: "1" } } } },
            { no: 3, name: "BlockFilters", kind: "message", jsonName: "BlockFilters", repeat: 1 /*RepeatType.PACKED*/, T: () => BlockFilter },
            { no: 9, name: "TargetDomain", kind: "scalar", jsonName: "TargetDomain", T: 9 /*ScalarType.STRING*/, options: { "validate.rules": { string: { minLen: "1" } } } },
            { no: 4, name: "TargetType", kind: "scalar", jsonName: "TargetType", T: 9 /*ScalarType.STRING*/, options: { "validate.rules": { string: { minLen: "1" } } } },
            { no: 5, name: "Fields", kind: "scalar", jsonName: "Fields", repeat: 2 /*RepeatType.UNPACKED*/, T: 9 /*ScalarType.STRING*/ },
            { no: 6, name: "ListSeparator", kind: "scalar", jsonName: "ListSeparator", T: 9 /*ScalarType.STRING*/, options: { "validate.rules": { string: { minLen: "1" } } } },
            { no: 7, name: "DecimalSeparator", kind: "scalar", jsonName: "DecimalSeparator", T: 9 /*ScalarType.STRING*/, options: { "validate.rules": { string: { minLen: "1" } } } },
            { no: 8, name: "ColumnNames", kind: "scalar", jsonName: "ColumnNames", repeat: 2 /*RepeatType.UNPACKED*/, T: 9 /*ScalarType.STRING*/ },
            { no: 10, name: "ColumnTranslationMaps", kind: "map", jsonName: "ColumnTranslationMaps", K: 9 /*ScalarType.STRING*/, V: { kind: "message", T: () => TranslationMap } },
            { no: 11, name: "ColumnFormats", kind: "map", jsonName: "ColumnFormats", K: 5 /*ScalarType.INT32*/, V: { kind: "message", T: () => ExtractColumnFormat } },
            { no: 12, name: "TargetTimeZone", kind: "scalar", jsonName: "TargetTimeZone", T: 9 /*ScalarType.STRING*/, options: { "validate.rules": { string: { minLen: "1", tzData: true } }, "grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field": { description: "Target user time zone  <a href='https://en.wikipedia.org/wiki/List_of_tz_database_time_zones'>format</a>", example: "\"Europe/Paris\"" } } }
        ], { "grpc.gateway.protoc_gen_openapiv2.options.openapiv2_schema": { jsonSchema: { required: ["UserId", "ProjectId", "TargetDomain", "TargetType", "Fields", "ListSeparator", "DecimalSeparator"] } } });
    }
    create(value?: PartialMessage<StartWorkflowExtractDataFromDBRequest>): StartWorkflowExtractDataFromDBRequest {
        const message = globalThis.Object.create((this.messagePrototype!));
        message.userId = "";
        message.projectId = "";
        message.blockFilters = [];
        message.targetDomain = "";
        message.targetType = "";
        message.fields = [];
        message.listSeparator = "";
        message.decimalSeparator = "";
        message.columnNames = [];
        message.columnTranslationMaps = {};
        message.columnFormats = {};
        message.targetTimeZone = "";
        if (value !== undefined)
            reflectionMergePartial<StartWorkflowExtractDataFromDBRequest>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: StartWorkflowExtractDataFromDBRequest): StartWorkflowExtractDataFromDBRequest {
        let message = target ?? this.create(), end = reader.pos + length;
        while (reader.pos < end) {
            let [fieldNo, wireType] = reader.tag();
            switch (fieldNo) {
                case /* string UserId = 1 [json_name = "UserId"];*/ 1:
                    message.userId = reader.string();
                    break;
                case /* string ProjectId = 2 [json_name = "ProjectId"];*/ 2:
                    message.projectId = reader.string();
                    break;
                case /* repeated api.BlockFilter BlockFilters = 3 [json_name = "BlockFilters"];*/ 3:
                    message.blockFilters.push(BlockFilter.internalBinaryRead(reader, reader.uint32(), options));
                    break;
                case /* string TargetDomain = 9 [json_name = "TargetDomain"];*/ 9:
                    message.targetDomain = reader.string();
                    break;
                case /* string TargetType = 4 [json_name = "TargetType"];*/ 4:
                    message.targetType = reader.string();
                    break;
                case /* repeated string Fields = 5 [json_name = "Fields"];*/ 5:
                    message.fields.push(reader.string());
                    break;
                case /* string ListSeparator = 6 [json_name = "ListSeparator"];*/ 6:
                    message.listSeparator = reader.string();
                    break;
                case /* string DecimalSeparator = 7 [json_name = "DecimalSeparator"];*/ 7:
                    message.decimalSeparator = reader.string();
                    break;
                case /* repeated string ColumnNames = 8 [json_name = "ColumnNames"];*/ 8:
                    message.columnNames.push(reader.string());
                    break;
                case /* map<string, api.TranslationMap> ColumnTranslationMaps = 10 [json_name = "ColumnTranslationMaps"];*/ 10:
                    this.binaryReadMap10(message.columnTranslationMaps, reader, options);
                    break;
                case /* map<int32, api.ExtractColumnFormat> ColumnFormats = 11 [json_name = "ColumnFormats"];*/ 11:
                    this.binaryReadMap11(message.columnFormats, reader, options);
                    break;
                case /* string TargetTimeZone = 12 [json_name = "TargetTimeZone"];*/ 12:
                    message.targetTimeZone = 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;
    }
    private binaryReadMap10(map: StartWorkflowExtractDataFromDBRequest["columnTranslationMaps"], reader: IBinaryReader, options: BinaryReadOptions): void {
        let len = reader.uint32(), end = reader.pos + len, key: keyof StartWorkflowExtractDataFromDBRequest["columnTranslationMaps"] | undefined, val: StartWorkflowExtractDataFromDBRequest["columnTranslationMaps"][any] | undefined;
        while (reader.pos < end) {
            let [fieldNo, wireType] = reader.tag();
            switch (fieldNo) {
                case 1:
                    key = reader.string();
                    break;
                case 2:
                    val = TranslationMap.internalBinaryRead(reader, reader.uint32(), options);
                    break;
                default: throw new globalThis.Error("unknown map entry field for field api.StartWorkflowExtractDataFromDBRequest.ColumnTranslationMaps");
            }
        }
        map[key ?? ""] = val ?? TranslationMap.create();
    }
    private binaryReadMap11(map: StartWorkflowExtractDataFromDBRequest["columnFormats"], reader: IBinaryReader, options: BinaryReadOptions): void {
        let len = reader.uint32(), end = reader.pos + len, key: keyof StartWorkflowExtractDataFromDBRequest["columnFormats"] | undefined, val: StartWorkflowExtractDataFromDBRequest["columnFormats"][any] | undefined;
        while (reader.pos < end) {
            let [fieldNo, wireType] = reader.tag();
            switch (fieldNo) {
                case 1:
                    key = reader.int32();
                    break;
                case 2:
                    val = ExtractColumnFormat.internalBinaryRead(reader, reader.uint32(), options);
                    break;
                default: throw new globalThis.Error("unknown map entry field for field api.StartWorkflowExtractDataFromDBRequest.ColumnFormats");
            }
        }
        map[key ?? 0] = val ?? ExtractColumnFormat.create();
    }
    internalBinaryWrite(message: StartWorkflowExtractDataFromDBRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
        /* string UserId = 1 [json_name = "UserId"]; */
        if (message.userId !== "")
            writer.tag(1, WireType.LengthDelimited).string(message.userId);
        /* string ProjectId = 2 [json_name = "ProjectId"]; */
        if (message.projectId !== "")
            writer.tag(2, WireType.LengthDelimited).string(message.projectId);
        /* repeated api.BlockFilter BlockFilters = 3 [json_name = "BlockFilters"]; */
        for (let i = 0; i < message.blockFilters.length; i++)
            BlockFilter.internalBinaryWrite(message.blockFilters[i], writer.tag(3, WireType.LengthDelimited).fork(), options).join();
        /* string TargetDomain = 9 [json_name = "TargetDomain"]; */
        if (message.targetDomain !== "")
            writer.tag(9, WireType.LengthDelimited).string(message.targetDomain);
        /* string TargetType = 4 [json_name = "TargetType"]; */
        if (message.targetType !== "")
            writer.tag(4, WireType.LengthDelimited).string(message.targetType);
        /* repeated string Fields = 5 [json_name = "Fields"]; */
        for (let i = 0; i < message.fields.length; i++)
            writer.tag(5, WireType.LengthDelimited).string(message.fields[i]);
        /* string ListSeparator = 6 [json_name = "ListSeparator"]; */
        if (message.listSeparator !== "")
            writer.tag(6, WireType.LengthDelimited).string(message.listSeparator);
        /* string DecimalSeparator = 7 [json_name = "DecimalSeparator"]; */
        if (message.decimalSeparator !== "")
            writer.tag(7, WireType.LengthDelimited).string(message.decimalSeparator);
        /* repeated string ColumnNames = 8 [json_name = "ColumnNames"]; */
        for (let i = 0; i < message.columnNames.length; i++)
            writer.tag(8, WireType.LengthDelimited).string(message.columnNames[i]);
        /* map<string, api.TranslationMap> ColumnTranslationMaps = 10 [json_name = "ColumnTranslationMaps"]; */
        for (let k of globalThis.Object.keys(message.columnTranslationMaps)) {
            writer.tag(10, WireType.LengthDelimited).fork().tag(1, WireType.LengthDelimited).string(k);
            writer.tag(2, WireType.LengthDelimited).fork();
            TranslationMap.internalBinaryWrite(message.columnTranslationMaps[k], writer, options);
            writer.join().join();
        }
        /* map<int32, api.ExtractColumnFormat> ColumnFormats = 11 [json_name = "ColumnFormats"]; */
        for (let k of globalThis.Object.keys(message.columnFormats)) {
            writer.tag(11, WireType.LengthDelimited).fork().tag(1, WireType.Varint).int32(parseInt(k));
            writer.tag(2, WireType.LengthDelimited).fork();
            ExtractColumnFormat.internalBinaryWrite(message.columnFormats[k as any], writer, options);
            writer.join().join();
        }
        /* string TargetTimeZone = 12 [json_name = "TargetTimeZone"]; */
        if (message.targetTimeZone !== "")
            writer.tag(12, WireType.LengthDelimited).string(message.targetTimeZone);
        let u = options.writeUnknownFields;
        if (u !== false)
            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
        return writer;
    }
}
/**
 * @generated MessageType for protobuf message api.StartWorkflowExtractDataFromDBRequest
 */
export const StartWorkflowExtractDataFromDBRequest = new StartWorkflowExtractDataFromDBRequest$Type();
// @generated message type with reflection information, may provide speed optimized methods
class StartWorkflowExtractDataFromDBResult$Type extends MessageType<StartWorkflowExtractDataFromDBResult> {
    constructor() {
        super("api.StartWorkflowExtractDataFromDBResult", [
            { no: 1, name: "WorkflowExecution", kind: "message", jsonName: "WorkflowExecution", T: () => WorkflowExecutionResult }
        ]);
    }
    create(value?: PartialMessage<StartWorkflowExtractDataFromDBResult>): StartWorkflowExtractDataFromDBResult {
        const message = globalThis.Object.create((this.messagePrototype!));
        if (value !== undefined)
            reflectionMergePartial<StartWorkflowExtractDataFromDBResult>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: StartWorkflowExtractDataFromDBResult): StartWorkflowExtractDataFromDBResult {
        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: StartWorkflowExtractDataFromDBResult, 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.StartWorkflowExtractDataFromDBResult
 */
export const StartWorkflowExtractDataFromDBResult = new StartWorkflowExtractDataFromDBResult$Type();
// @generated message type with reflection information, may provide speed optimized methods
class StartWorkflowExtractKPIRequest$Type extends MessageType<StartWorkflowExtractKPIRequest> {
    constructor() {
        super("api.StartWorkflowExtractKPIRequest", [
            { no: 1, name: "ProjectId", kind: "scalar", jsonName: "ProjectId", T: 9 /*ScalarType.STRING*/, options: { "validate.rules": { string: { minLen: "1" } } } },
            { no: 2, name: "UserId", kind: "scalar", jsonName: "UserId", T: 9 /*ScalarType.STRING*/, options: { "validate.rules": { string: { minLen: "1" } } } },
            { no: 3, name: "QueryType", kind: "enum", jsonName: "QueryType", T: () => ["api.CHQueryType", CHQueryType], options: { "validate.rules": { enum: { definedOnly: true } } } },
            { no: 4, name: "QueryBlock", kind: "scalar", jsonName: "QueryBlock", T: 9 /*ScalarType.STRING*/, options: { "validate.rules": { string: { minLen: "1" } } } },
            { no: 5, name: "EntityBlockFilters", kind: "message", jsonName: "EntityBlockFilters", repeat: 1 /*RepeatType.PACKED*/, T: () => EntityBlockFilter },
            { no: 6, name: "Filter", kind: "message", jsonName: "Filter", T: () => CHFilter },
            { no: 7, name: "Dimensions", kind: "message", jsonName: "Dimensions", repeat: 1 /*RepeatType.PACKED*/, T: () => CHDimension },
            { no: 8, name: "Metrics", kind: "message", jsonName: "Metrics", repeat: 1 /*RepeatType.PACKED*/, T: () => CHMetric },
            { no: 9, name: "TargetTimeZone", kind: "scalar", jsonName: "TargetTimeZone", T: 9 /*ScalarType.STRING*/, options: { "validate.rules": { string: { minLen: "1", tzData: true } }, "grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field": { description: "Target user time zone  <a href='https://en.wikipedia.org/wiki/List_of_tz_database_time_zones'>format</a>", example: "\"Europe/Paris\"" } } },
            { no: 10, name: "KpiGroupName", kind: "scalar", jsonName: "KpiGroupName", T: 9 /*ScalarType.STRING*/, options: { "validate.rules": { string: { in: ["executionflow", "stock", "movement", "handlingunit", "actor", "item", "stock_extended"] } }, "grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field": { description: "Name of the analysis criterion to find the kpi data from", example: "\"stock_extended\"" } } },
            { no: 11, name: "TargetDomain", kind: "scalar", jsonName: "TargetDomain", T: 9 /*ScalarType.STRING*/, options: { "validate.rules": { string: { minLen: "1" } } } },
            { no: 12, name: "TargetType", kind: "scalar", jsonName: "TargetType", T: 9 /*ScalarType.STRING*/, options: { "validate.rules": { string: { minLen: "1" } } } },
            { no: 13, name: "Fields", kind: "scalar", jsonName: "Fields", repeat: 2 /*RepeatType.UNPACKED*/, T: 9 /*ScalarType.STRING*/ },
            { no: 14, name: "ListSeparator", kind: "scalar", jsonName: "ListSeparator", T: 9 /*ScalarType.STRING*/, options: { "validate.rules": { string: { minLen: "1" } } } },
            { no: 15, name: "DecimalSeparator", kind: "scalar", jsonName: "DecimalSeparator", T: 9 /*ScalarType.STRING*/, options: { "validate.rules": { string: { minLen: "1" } } } },
            { no: 16, name: "ColumnNames", kind: "scalar", jsonName: "ColumnNames", repeat: 2 /*RepeatType.UNPACKED*/, T: 9 /*ScalarType.STRING*/ },
            { no: 17, name: "ColumnTranslationMaps", kind: "map", jsonName: "ColumnTranslationMaps", K: 9 /*ScalarType.STRING*/, V: { kind: "message", T: () => TranslationMap } },
            { no: 18, name: "FieldIdxLVDetailedQuantity", kind: "scalar", jsonName: "FieldIdxLVDetailedQuantity", repeat: 1 /*RepeatType.PACKED*/, T: 5 /*ScalarType.INT32*/ },
            { no: 19, name: "ColumnFormats", kind: "map", jsonName: "ColumnFormats", K: 5 /*ScalarType.INT32*/, V: { kind: "message", T: () => ExtractColumnFormat } }
        ], { "grpc.gateway.protoc_gen_openapiv2.options.openapiv2_schema": { jsonSchema: { required: ["UserId", "ProjectId", "TargetDomain", "TargetType", "Fields", "ListSeparator", "DecimalSeparator"] } } });
    }
    create(value?: PartialMessage<StartWorkflowExtractKPIRequest>): StartWorkflowExtractKPIRequest {
        const message = globalThis.Object.create((this.messagePrototype!));
        message.projectId = "";
        message.userId = "";
        message.queryType = 0;
        message.queryBlock = "";
        message.entityBlockFilters = [];
        message.dimensions = [];
        message.metrics = [];
        message.targetTimeZone = "";
        message.kpiGroupName = "";
        message.targetDomain = "";
        message.targetType = "";
        message.fields = [];
        message.listSeparator = "";
        message.decimalSeparator = "";
        message.columnNames = [];
        message.columnTranslationMaps = {};
        message.fieldIdxLVDetailedQuantity = [];
        message.columnFormats = {};
        if (value !== undefined)
            reflectionMergePartial<StartWorkflowExtractKPIRequest>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: StartWorkflowExtractKPIRequest): StartWorkflowExtractKPIRequest {
        let message = target ?? this.create(), end = reader.pos + length;
        while (reader.pos < end) {
            let [fieldNo, wireType] = reader.tag();
            switch (fieldNo) {
                case /* string ProjectId = 1 [json_name = "ProjectId"];*/ 1:
                    message.projectId = reader.string();
                    break;
                case /* string UserId = 2 [json_name = "UserId"];*/ 2:
                    message.userId = reader.string();
                    break;
                case /* api.CHQueryType QueryType = 3 [json_name = "QueryType"];*/ 3:
                    message.queryType = reader.int32();
                    break;
                case /* string QueryBlock = 4 [json_name = "QueryBlock"];*/ 4:
                    message.queryBlock = reader.string();
                    break;
                case /* repeated api.EntityBlockFilter EntityBlockFilters = 5 [json_name = "EntityBlockFilters"];*/ 5:
                    message.entityBlockFilters.push(EntityBlockFilter.internalBinaryRead(reader, reader.uint32(), options));
                    break;
                case /* api.CHFilter Filter = 6 [json_name = "Filter"];*/ 6:
                    message.filter = CHFilter.internalBinaryRead(reader, reader.uint32(), options, message.filter);
                    break;
                case /* repeated api.CHDimension Dimensions = 7 [json_name = "Dimensions"];*/ 7:
                    message.dimensions.push(CHDimension.internalBinaryRead(reader, reader.uint32(), options));
                    break;
                case /* repeated api.CHMetric Metrics = 8 [json_name = "Metrics"];*/ 8:
                    message.metrics.push(CHMetric.internalBinaryRead(reader, reader.uint32(), options));
                    break;
                case /* string TargetTimeZone = 9 [json_name = "TargetTimeZone"];*/ 9:
                    message.targetTimeZone = reader.string();
                    break;
                case /* string KpiGroupName = 10 [json_name = "KpiGroupName"];*/ 10:
                    message.kpiGroupName = reader.string();
                    break;
                case /* string TargetDomain = 11 [json_name = "TargetDomain"];*/ 11:
                    message.targetDomain = reader.string();
                    break;
                case /* string TargetType = 12 [json_name = "TargetType"];*/ 12:
                    message.targetType = reader.string();
                    break;
                case /* repeated string Fields = 13 [json_name = "Fields"];*/ 13:
                    message.fields.push(reader.string());
                    break;
                case /* string ListSeparator = 14 [json_name = "ListSeparator"];*/ 14:
                    message.listSeparator = reader.string();
                    break;
                case /* string DecimalSeparator = 15 [json_name = "DecimalSeparator"];*/ 15:
                    message.decimalSeparator = reader.string();
                    break;
                case /* repeated string ColumnNames = 16 [json_name = "ColumnNames"];*/ 16:
                    message.columnNames.push(reader.string());
                    break;
                case /* map<string, api.TranslationMap> ColumnTranslationMaps = 17 [json_name = "ColumnTranslationMaps"];*/ 17:
                    this.binaryReadMap17(message.columnTranslationMaps, reader, options);
                    break;
                case /* repeated int32 FieldIdxLVDetailedQuantity = 18 [json_name = "FieldIdxLVDetailedQuantity"];*/ 18:
                    if (wireType === WireType.LengthDelimited)
                        for (let e = reader.int32() + reader.pos; reader.pos < e;)
                            message.fieldIdxLVDetailedQuantity.push(reader.int32());
                    else
                        message.fieldIdxLVDetailedQuantity.push(reader.int32());
                    break;
                case /* map<int32, api.ExtractColumnFormat> ColumnFormats = 19 [json_name = "ColumnFormats"];*/ 19:
                    this.binaryReadMap19(message.columnFormats, reader, 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;
    }
    private binaryReadMap17(map: StartWorkflowExtractKPIRequest["columnTranslationMaps"], reader: IBinaryReader, options: BinaryReadOptions): void {
        let len = reader.uint32(), end = reader.pos + len, key: keyof StartWorkflowExtractKPIRequest["columnTranslationMaps"] | undefined, val: StartWorkflowExtractKPIRequest["columnTranslationMaps"][any] | undefined;
        while (reader.pos < end) {
            let [fieldNo, wireType] = reader.tag();
            switch (fieldNo) {
                case 1:
                    key = reader.string();
                    break;
                case 2:
                    val = TranslationMap.internalBinaryRead(reader, reader.uint32(), options);
                    break;
                default: throw new globalThis.Error("unknown map entry field for field api.StartWorkflowExtractKPIRequest.ColumnTranslationMaps");
            }
        }
        map[key ?? ""] = val ?? TranslationMap.create();
    }
    private binaryReadMap19(map: StartWorkflowExtractKPIRequest["columnFormats"], reader: IBinaryReader, options: BinaryReadOptions): void {
        let len = reader.uint32(), end = reader.pos + len, key: keyof StartWorkflowExtractKPIRequest["columnFormats"] | undefined, val: StartWorkflowExtractKPIRequest["columnFormats"][any] | undefined;
        while (reader.pos < end) {
            let [fieldNo, wireType] = reader.tag();
            switch (fieldNo) {
                case 1:
                    key = reader.int32();
                    break;
                case 2:
                    val = ExtractColumnFormat.internalBinaryRead(reader, reader.uint32(), options);
                    break;
                default: throw new globalThis.Error("unknown map entry field for field api.StartWorkflowExtractKPIRequest.ColumnFormats");
            }
        }
        map[key ?? 0] = val ?? ExtractColumnFormat.create();
    }
    internalBinaryWrite(message: StartWorkflowExtractKPIRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
        /* string ProjectId = 1 [json_name = "ProjectId"]; */
        if (message.projectId !== "")
            writer.tag(1, WireType.LengthDelimited).string(message.projectId);
        /* string UserId = 2 [json_name = "UserId"]; */
        if (message.userId !== "")
            writer.tag(2, WireType.LengthDelimited).string(message.userId);
        /* api.CHQueryType QueryType = 3 [json_name = "QueryType"]; */
        if (message.queryType !== 0)
            writer.tag(3, WireType.Varint).int32(message.queryType);
        /* string QueryBlock = 4 [json_name = "QueryBlock"]; */
        if (message.queryBlock !== "")
            writer.tag(4, WireType.LengthDelimited).string(message.queryBlock);
        /* repeated api.EntityBlockFilter EntityBlockFilters = 5 [json_name = "EntityBlockFilters"]; */
        for (let i = 0; i < message.entityBlockFilters.length; i++)
            EntityBlockFilter.internalBinaryWrite(message.entityBlockFilters[i], writer.tag(5, WireType.LengthDelimited).fork(), options).join();
        /* api.CHFilter Filter = 6 [json_name = "Filter"]; */
        if (message.filter)
            CHFilter.internalBinaryWrite(message.filter, writer.tag(6, WireType.LengthDelimited).fork(), options).join();
        /* repeated api.CHDimension Dimensions = 7 [json_name = "Dimensions"]; */
        for (let i = 0; i < message.dimensions.length; i++)
            CHDimension.internalBinaryWrite(message.dimensions[i], writer.tag(7, WireType.LengthDelimited).fork(), options).join();
        /* repeated api.CHMetric Metrics = 8 [json_name = "Metrics"]; */
        for (let i = 0; i < message.metrics.length; i++)
            CHMetric.internalBinaryWrite(message.metrics[i], writer.tag(8, WireType.LengthDelimited).fork(), options).join();
        /* string TargetTimeZone = 9 [json_name = "TargetTimeZone"]; */
        if (message.targetTimeZone !== "")
            writer.tag(9, WireType.LengthDelimited).string(message.targetTimeZone);
        /* string KpiGroupName = 10 [json_name = "KpiGroupName"]; */
        if (message.kpiGroupName !== "")
            writer.tag(10, WireType.LengthDelimited).string(message.kpiGroupName);
        /* string TargetDomain = 11 [json_name = "TargetDomain"]; */
        if (message.targetDomain !== "")
            writer.tag(11, WireType.LengthDelimited).string(message.targetDomain);
        /* string TargetType = 12 [json_name = "TargetType"]; */
        if (message.targetType !== "")
            writer.tag(12, WireType.LengthDelimited).string(message.targetType);
        /* repeated string Fields = 13 [json_name = "Fields"]; */
        for (let i = 0; i < message.fields.length; i++)
            writer.tag(13, WireType.LengthDelimited).string(message.fields[i]);
        /* string ListSeparator = 14 [json_name = "ListSeparator"]; */
        if (message.listSeparator !== "")
            writer.tag(14, WireType.LengthDelimited).string(message.listSeparator);
        /* string DecimalSeparator = 15 [json_name = "DecimalSeparator"]; */
        if (message.decimalSeparator !== "")
            writer.tag(15, WireType.LengthDelimited).string(message.decimalSeparator);
        /* repeated string ColumnNames = 16 [json_name = "ColumnNames"]; */
        for (let i = 0; i < message.columnNames.length; i++)
            writer.tag(16, WireType.LengthDelimited).string(message.columnNames[i]);
        /* map<string, api.TranslationMap> ColumnTranslationMaps = 17 [json_name = "ColumnTranslationMaps"]; */
        for (let k of globalThis.Object.keys(message.columnTranslationMaps)) {
            writer.tag(17, WireType.LengthDelimited).fork().tag(1, WireType.LengthDelimited).string(k);
            writer.tag(2, WireType.LengthDelimited).fork();
            TranslationMap.internalBinaryWrite(message.columnTranslationMaps[k], writer, options);
            writer.join().join();
        }
        /* repeated int32 FieldIdxLVDetailedQuantity = 18 [json_name = "FieldIdxLVDetailedQuantity"]; */
        if (message.fieldIdxLVDetailedQuantity.length) {
            writer.tag(18, WireType.LengthDelimited).fork();
            for (let i = 0; i < message.fieldIdxLVDetailedQuantity.length; i++)
                writer.int32(message.fieldIdxLVDetailedQuantity[i]);
            writer.join();
        }
        /* map<int32, api.ExtractColumnFormat> ColumnFormats = 19 [json_name = "ColumnFormats"]; */
        for (let k of globalThis.Object.keys(message.columnFormats)) {
            writer.tag(19, WireType.LengthDelimited).fork().tag(1, WireType.Varint).int32(parseInt(k));
            writer.tag(2, WireType.LengthDelimited).fork();
            ExtractColumnFormat.internalBinaryWrite(message.columnFormats[k as any], writer, options);
            writer.join().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.StartWorkflowExtractKPIRequest
 */
export const StartWorkflowExtractKPIRequest = new StartWorkflowExtractKPIRequest$Type();
// @generated message type with reflection information, may provide speed optimized methods
class StartWorkflowExtractKPIResult$Type extends MessageType<StartWorkflowExtractKPIResult> {
    constructor() {
        super("api.StartWorkflowExtractKPIResult", [
            { no: 1, name: "WorkflowExecution", kind: "message", jsonName: "WorkflowExecution", T: () => WorkflowExecutionResult }
        ]);
    }
    create(value?: PartialMessage<StartWorkflowExtractKPIResult>): StartWorkflowExtractKPIResult {
        const message = globalThis.Object.create((this.messagePrototype!));
        if (value !== undefined)
            reflectionMergePartial<StartWorkflowExtractKPIResult>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: StartWorkflowExtractKPIResult): StartWorkflowExtractKPIResult {
        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: StartWorkflowExtractKPIResult, 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.StartWorkflowExtractKPIResult
 */
export const StartWorkflowExtractKPIResult = new StartWorkflowExtractKPIResult$Type();
// @generated message type with reflection information, may provide speed optimized methods
class RegisterModuleWorkflowsRequest$Type extends MessageType<RegisterModuleWorkflowsRequest> {
    constructor() {
        super("api.RegisterModuleWorkflowsRequest", [
            { no: 1, name: "ModuleRegistrations", kind: "message", jsonName: "ModuleRegistrations", repeat: 1 /*RepeatType.PACKED*/, T: () => ModuleRegistration },
            { no: 2, name: "Tasklist", kind: "scalar", jsonName: "Tasklist", T: 9 /*ScalarType.STRING*/, options: { "validate.rules": { string: { minLen: "1" } } } }
        ], { "grpc.gateway.protoc_gen_openapiv2.options.openapiv2_schema": { jsonSchema: { required: ["Tasklist"] } } });
    }
    create(value?: PartialMessage<RegisterModuleWorkflowsRequest>): RegisterModuleWorkflowsRequest {
        const message = globalThis.Object.create((this.messagePrototype!));
        message.moduleRegistrations = [];
        message.tasklist = "";
        if (value !== undefined)
            reflectionMergePartial<RegisterModuleWorkflowsRequest>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: RegisterModuleWorkflowsRequest): RegisterModuleWorkflowsRequest {
        let message = target ?? this.create(), end = reader.pos + length;
        while (reader.pos < end) {
            let [fieldNo, wireType] = reader.tag();
            switch (fieldNo) {
                case /* repeated api.ModuleRegistration ModuleRegistrations = 1 [json_name = "ModuleRegistrations"];*/ 1:
                    message.moduleRegistrations.push(ModuleRegistration.internalBinaryRead(reader, reader.uint32(), options));
                    break;
                case /* string Tasklist = 2 [json_name = "Tasklist"];*/ 2:
                    message.tasklist = 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: RegisterModuleWorkflowsRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
        /* repeated api.ModuleRegistration ModuleRegistrations = 1 [json_name = "ModuleRegistrations"]; */
        for (let i = 0; i < message.moduleRegistrations.length; i++)
            ModuleRegistration.internalBinaryWrite(message.moduleRegistrations[i], writer.tag(1, WireType.LengthDelimited).fork(), options).join();
        /* string Tasklist = 2 [json_name = "Tasklist"]; */
        if (message.tasklist !== "")
            writer.tag(2, WireType.LengthDelimited).string(message.tasklist);
        let u = options.writeUnknownFields;
        if (u !== false)
            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
        return writer;
    }
}
/**
 * @generated MessageType for protobuf message api.RegisterModuleWorkflowsRequest
 */
export const RegisterModuleWorkflowsRequest = new RegisterModuleWorkflowsRequest$Type();
// @generated message type with reflection information, may provide speed optimized methods
class RegisterModuleWorkflowsResult$Type extends MessageType<RegisterModuleWorkflowsResult> {
    constructor() {
        super("api.RegisterModuleWorkflowsResult", []);
    }
    create(value?: PartialMessage<RegisterModuleWorkflowsResult>): RegisterModuleWorkflowsResult {
        const message = globalThis.Object.create((this.messagePrototype!));
        if (value !== undefined)
            reflectionMergePartial<RegisterModuleWorkflowsResult>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: RegisterModuleWorkflowsResult): RegisterModuleWorkflowsResult {
        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: RegisterModuleWorkflowsResult, 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.RegisterModuleWorkflowsResult
 */
export const RegisterModuleWorkflowsResult = new RegisterModuleWorkflowsResult$Type();
// @generated message type with reflection information, may provide speed optimized methods
class DeregisterModuleWorkflowsRequest$Type extends MessageType<DeregisterModuleWorkflowsRequest> {
    constructor() {
        super("api.DeregisterModuleWorkflowsRequest", [
            { no: 1, name: "ModuleDeregistrations", kind: "message", jsonName: "ModuleDeregistrations", repeat: 1 /*RepeatType.PACKED*/, T: () => ModuleDeregistration },
            { no: 2, name: "Tasklist", kind: "scalar", jsonName: "Tasklist", T: 9 /*ScalarType.STRING*/, options: { "validate.rules": { string: { minLen: "1" } } } }
        ], { "grpc.gateway.protoc_gen_openapiv2.options.openapiv2_schema": { jsonSchema: { required: ["Tasklist"] } } });
    }
    create(value?: PartialMessage<DeregisterModuleWorkflowsRequest>): DeregisterModuleWorkflowsRequest {
        const message = globalThis.Object.create((this.messagePrototype!));
        message.moduleDeregistrations = [];
        message.tasklist = "";
        if (value !== undefined)
            reflectionMergePartial<DeregisterModuleWorkflowsRequest>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: DeregisterModuleWorkflowsRequest): DeregisterModuleWorkflowsRequest {
        let message = target ?? this.create(), end = reader.pos + length;
        while (reader.pos < end) {
            let [fieldNo, wireType] = reader.tag();
            switch (fieldNo) {
                case /* repeated api.ModuleDeregistration ModuleDeregistrations = 1 [json_name = "ModuleDeregistrations"];*/ 1:
                    message.moduleDeregistrations.push(ModuleDeregistration.internalBinaryRead(reader, reader.uint32(), options));
                    break;
                case /* string Tasklist = 2 [json_name = "Tasklist"];*/ 2:
                    message.tasklist = 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: DeregisterModuleWorkflowsRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
        /* repeated api.ModuleDeregistration ModuleDeregistrations = 1 [json_name = "ModuleDeregistrations"]; */
        for (let i = 0; i < message.moduleDeregistrations.length; i++)
            ModuleDeregistration.internalBinaryWrite(message.moduleDeregistrations[i], writer.tag(1, WireType.LengthDelimited).fork(), options).join();
        /* string Tasklist = 2 [json_name = "Tasklist"]; */
        if (message.tasklist !== "")
            writer.tag(2, WireType.LengthDelimited).string(message.tasklist);
        let u = options.writeUnknownFields;
        if (u !== false)
            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
        return writer;
    }
}
/**
 * @generated MessageType for protobuf message api.DeregisterModuleWorkflowsRequest
 */
export const DeregisterModuleWorkflowsRequest = new DeregisterModuleWorkflowsRequest$Type();
// @generated message type with reflection information, may provide speed optimized methods
class DeregisterModuleWorkflowsResult$Type extends MessageType<DeregisterModuleWorkflowsResult> {
    constructor() {
        super("api.DeregisterModuleWorkflowsResult", []);
    }
    create(value?: PartialMessage<DeregisterModuleWorkflowsResult>): DeregisterModuleWorkflowsResult {
        const message = globalThis.Object.create((this.messagePrototype!));
        if (value !== undefined)
            reflectionMergePartial<DeregisterModuleWorkflowsResult>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: DeregisterModuleWorkflowsResult): DeregisterModuleWorkflowsResult {
        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: DeregisterModuleWorkflowsResult, 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.DeregisterModuleWorkflowsResult
 */
export const DeregisterModuleWorkflowsResult = new DeregisterModuleWorkflowsResult$Type();
// @generated message type with reflection information, may provide speed optimized methods
class ModuleWorkflow$Type extends MessageType<ModuleWorkflow> {
    constructor() {
        super("api.ModuleWorkflow", [
            { no: 1, name: "WorkflowTarget", kind: "enum", jsonName: "WorkflowTarget", T: () => ["api.WorkflowTypeEnum", WorkflowTypeEnum] },
            { no: 2, name: "WorkflowPath", kind: "scalar", jsonName: "WorkflowPath", T: 9 /*ScalarType.STRING*/ },
            { no: 3, name: "Type", kind: "enum", jsonName: "Type", T: () => ["api.ModuleWorkflowTypeEnum", ModuleWorkflowTypeEnum] },
            { no: 4, name: "Timeout", kind: "scalar", jsonName: "Timeout", T: 5 /*ScalarType.INT32*/ },
            { no: 5, name: "Tasklist", kind: "scalar", jsonName: "Tasklist", T: 9 /*ScalarType.STRING*/ }
        ]);
    }
    create(value?: PartialMessage<ModuleWorkflow>): ModuleWorkflow {
        const message = globalThis.Object.create((this.messagePrototype!));
        message.workflowTarget = 0;
        message.workflowPath = "";
        message.type = 0;
        message.timeout = 0;
        message.tasklist = "";
        if (value !== undefined)
            reflectionMergePartial<ModuleWorkflow>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ModuleWorkflow): ModuleWorkflow {
        let message = target ?? this.create(), end = reader.pos + length;
        while (reader.pos < end) {
            let [fieldNo, wireType] = reader.tag();
            switch (fieldNo) {
                case /* api.WorkflowTypeEnum WorkflowTarget = 1 [json_name = "WorkflowTarget"];*/ 1:
                    message.workflowTarget = reader.int32();
                    break;
                case /* string WorkflowPath = 2 [json_name = "WorkflowPath"];*/ 2:
                    message.workflowPath = reader.string();
                    break;
                case /* api.ModuleWorkflowTypeEnum Type = 3 [json_name = "Type"];*/ 3:
                    message.type = reader.int32();
                    break;
                case /* int32 Timeout = 4 [json_name = "Timeout"];*/ 4:
                    message.timeout = reader.int32();
                    break;
                case /* string Tasklist = 5 [json_name = "Tasklist"];*/ 5:
                    message.tasklist = 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: ModuleWorkflow, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
        /* api.WorkflowTypeEnum WorkflowTarget = 1 [json_name = "WorkflowTarget"]; */
        if (message.workflowTarget !== 0)
            writer.tag(1, WireType.Varint).int32(message.workflowTarget);
        /* string WorkflowPath = 2 [json_name = "WorkflowPath"]; */
        if (message.workflowPath !== "")
            writer.tag(2, WireType.LengthDelimited).string(message.workflowPath);
        /* api.ModuleWorkflowTypeEnum Type = 3 [json_name = "Type"]; */
        if (message.type !== 0)
            writer.tag(3, WireType.Varint).int32(message.type);
        /* int32 Timeout = 4 [json_name = "Timeout"]; */
        if (message.timeout !== 0)
            writer.tag(4, WireType.Varint).int32(message.timeout);
        /* string Tasklist = 5 [json_name = "Tasklist"]; */
        if (message.tasklist !== "")
            writer.tag(5, WireType.LengthDelimited).string(message.tasklist);
        let u = options.writeUnknownFields;
        if (u !== false)
            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
        return writer;
    }
}
/**
 * @generated MessageType for protobuf message api.ModuleWorkflow
 */
export const ModuleWorkflow = new ModuleWorkflow$Type();
// @generated message type with reflection information, may provide speed optimized methods
class GetModuleWorkflowsRequest$Type extends MessageType<GetModuleWorkflowsRequest> {
    constructor() {
        super("api.GetModuleWorkflowsRequest", [
            { no: 1, name: "WorkflowTarget", kind: "enum", jsonName: "WorkflowTarget", T: () => ["api.WorkflowTypeEnum", WorkflowTypeEnum] }
        ], { "grpc.gateway.protoc_gen_openapiv2.options.openapiv2_schema": { jsonSchema: { required: ["WorkflowTarget"] } } });
    }
    create(value?: PartialMessage<GetModuleWorkflowsRequest>): GetModuleWorkflowsRequest {
        const message = globalThis.Object.create((this.messagePrototype!));
        message.workflowTarget = 0;
        if (value !== undefined)
            reflectionMergePartial<GetModuleWorkflowsRequest>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: GetModuleWorkflowsRequest): GetModuleWorkflowsRequest {
        let message = target ?? this.create(), end = reader.pos + length;
        while (reader.pos < end) {
            let [fieldNo, wireType] = reader.tag();
            switch (fieldNo) {
                case /* api.WorkflowTypeEnum WorkflowTarget = 1 [json_name = "WorkflowTarget"];*/ 1:
                    message.workflowTarget = reader.int32();
                    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: GetModuleWorkflowsRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
        /* api.WorkflowTypeEnum WorkflowTarget = 1 [json_name = "WorkflowTarget"]; */
        if (message.workflowTarget !== 0)
            writer.tag(1, WireType.Varint).int32(message.workflowTarget);
        let u = options.writeUnknownFields;
        if (u !== false)
            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
        return writer;
    }
}
/**
 * @generated MessageType for protobuf message api.GetModuleWorkflowsRequest
 */
export const GetModuleWorkflowsRequest = new GetModuleWorkflowsRequest$Type();
// @generated message type with reflection information, may provide speed optimized methods
class GetModuleWorkflowsResult$Type extends MessageType<GetModuleWorkflowsResult> {
    constructor() {
        super("api.GetModuleWorkflowsResult", [
            { no: 1, name: "ModuleWorkflows", kind: "message", jsonName: "ModuleWorkflows", repeat: 1 /*RepeatType.PACKED*/, T: () => ModuleWorkflow }
        ]);
    }
    create(value?: PartialMessage<GetModuleWorkflowsResult>): GetModuleWorkflowsResult {
        const message = globalThis.Object.create((this.messagePrototype!));
        message.moduleWorkflows = [];
        if (value !== undefined)
            reflectionMergePartial<GetModuleWorkflowsResult>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: GetModuleWorkflowsResult): GetModuleWorkflowsResult {
        let message = target ?? this.create(), end = reader.pos + length;
        while (reader.pos < end) {
            let [fieldNo, wireType] = reader.tag();
            switch (fieldNo) {
                case /* repeated api.ModuleWorkflow ModuleWorkflows = 1 [json_name = "ModuleWorkflows"];*/ 1:
                    message.moduleWorkflows.push(ModuleWorkflow.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: GetModuleWorkflowsResult, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
        /* repeated api.ModuleWorkflow ModuleWorkflows = 1 [json_name = "ModuleWorkflows"]; */
        for (let i = 0; i < message.moduleWorkflows.length; i++)
            ModuleWorkflow.internalBinaryWrite(message.moduleWorkflows[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.GetModuleWorkflowsResult
 */
export const GetModuleWorkflowsResult = new GetModuleWorkflowsResult$Type();
// @generated message type with reflection information, may provide speed optimized methods
class StopWorkflowRequest$Type extends MessageType<StopWorkflowRequest> {
    constructor() {
        super("api.StopWorkflowRequest", [
            { no: 1, name: "WorkflowId", kind: "scalar", jsonName: "WorkflowId", T: 9 /*ScalarType.STRING*/, options: { "validate.rules": { string: { minLen: "1" } } } },
            { no: 2, name: "RunId", kind: "scalar", jsonName: "RunId", T: 9 /*ScalarType.STRING*/ },
            { no: 3, name: "Domain", kind: "scalar", jsonName: "Domain", T: 9 /*ScalarType.STRING*/, options: { "validate.rules": { string: { minLen: "1" } } } }
        ], { "grpc.gateway.protoc_gen_openapiv2.options.openapiv2_schema": { jsonSchema: { required: ["WorkflowId", "Domain"] } } });
    }
    create(value?: PartialMessage<StopWorkflowRequest>): StopWorkflowRequest {
        const message = globalThis.Object.create((this.messagePrototype!));
        message.workflowId = "";
        message.runId = "";
        message.domain = "";
        if (value !== undefined)
            reflectionMergePartial<StopWorkflowRequest>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: StopWorkflowRequest): StopWorkflowRequest {
        let message = target ?? this.create(), end = reader.pos + length;
        while (reader.pos < end) {
            let [fieldNo, wireType] = reader.tag();
            switch (fieldNo) {
                case /* string WorkflowId = 1 [json_name = "WorkflowId"];*/ 1:
                    message.workflowId = reader.string();
                    break;
                case /* string RunId = 2 [json_name = "RunId"];*/ 2:
                    message.runId = reader.string();
                    break;
                case /* string Domain = 3 [json_name = "Domain"];*/ 3:
                    message.domain = 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: StopWorkflowRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
        /* string WorkflowId = 1 [json_name = "WorkflowId"]; */
        if (message.workflowId !== "")
            writer.tag(1, WireType.LengthDelimited).string(message.workflowId);
        /* string RunId = 2 [json_name = "RunId"]; */
        if (message.runId !== "")
            writer.tag(2, WireType.LengthDelimited).string(message.runId);
        /* string Domain = 3 [json_name = "Domain"]; */
        if (message.domain !== "")
            writer.tag(3, WireType.LengthDelimited).string(message.domain);
        let u = options.writeUnknownFields;
        if (u !== false)
            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
        return writer;
    }
}
/**
 * @generated MessageType for protobuf message api.StopWorkflowRequest
 */
export const StopWorkflowRequest = new StopWorkflowRequest$Type();
// @generated message type with reflection information, may provide speed optimized methods
class StopWorkflowResult$Type extends MessageType<StopWorkflowResult> {
    constructor() {
        super("api.StopWorkflowResult", []);
    }
    create(value?: PartialMessage<StopWorkflowResult>): StopWorkflowResult {
        const message = globalThis.Object.create((this.messagePrototype!));
        if (value !== undefined)
            reflectionMergePartial<StopWorkflowResult>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: StopWorkflowResult): StopWorkflowResult {
        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: StopWorkflowResult, 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.StopWorkflowResult
 */
export const StopWorkflowResult = new StopWorkflowResult$Type();
// @generated message type with reflection information, may provide speed optimized methods
class StartWorkflowOptimizeClickhouseRequest$Type extends MessageType<StartWorkflowOptimizeClickhouseRequest> {
    constructor() {
        super("api.StartWorkflowOptimizeClickhouseRequest", [
            { no: 1, name: "Final", kind: "scalar", jsonName: "Final", T: 8 /*ScalarType.BOOL*/ },
            { no: 2, name: "CronSchedule", kind: "scalar", jsonName: "CronSchedule", T: 9 /*ScalarType.STRING*/ }
        ]);
    }
    create(value?: PartialMessage<StartWorkflowOptimizeClickhouseRequest>): StartWorkflowOptimizeClickhouseRequest {
        const message = globalThis.Object.create((this.messagePrototype!));
        message.final = false;
        message.cronSchedule = "";
        if (value !== undefined)
            reflectionMergePartial<StartWorkflowOptimizeClickhouseRequest>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: StartWorkflowOptimizeClickhouseRequest): StartWorkflowOptimizeClickhouseRequest {
        let message = target ?? this.create(), end = reader.pos + length;
        while (reader.pos < end) {
            let [fieldNo, wireType] = reader.tag();
            switch (fieldNo) {
                case /* bool Final = 1 [json_name = "Final"];*/ 1:
                    message.final = reader.bool();
                    break;
                case /* string CronSchedule = 2 [json_name = "CronSchedule"];*/ 2:
                    message.cronSchedule = 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: StartWorkflowOptimizeClickhouseRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
        /* bool Final = 1 [json_name = "Final"]; */
        if (message.final !== false)
            writer.tag(1, WireType.Varint).bool(message.final);
        /* string CronSchedule = 2 [json_name = "CronSchedule"]; */
        if (message.cronSchedule !== "")
            writer.tag(2, WireType.LengthDelimited).string(message.cronSchedule);
        let u = options.writeUnknownFields;
        if (u !== false)
            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
        return writer;
    }
}
/**
 * @generated MessageType for protobuf message api.StartWorkflowOptimizeClickhouseRequest
 */
export const StartWorkflowOptimizeClickhouseRequest = new StartWorkflowOptimizeClickhouseRequest$Type();
// @generated message type with reflection information, may provide speed optimized methods
class StartWorkflowOptimizeClickhouseResult$Type extends MessageType<StartWorkflowOptimizeClickhouseResult> {
    constructor() {
        super("api.StartWorkflowOptimizeClickhouseResult", [
            { no: 1, name: "WorkflowExecution", kind: "message", jsonName: "WorkflowExecution", T: () => WorkflowExecutionResult }
        ]);
    }
    create(value?: PartialMessage<StartWorkflowOptimizeClickhouseResult>): StartWorkflowOptimizeClickhouseResult {
        const message = globalThis.Object.create((this.messagePrototype!));
        if (value !== undefined)
            reflectionMergePartial<StartWorkflowOptimizeClickhouseResult>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: StartWorkflowOptimizeClickhouseResult): StartWorkflowOptimizeClickhouseResult {
        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: StartWorkflowOptimizeClickhouseResult, 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.StartWorkflowOptimizeClickhouseResult
 */
export const StartWorkflowOptimizeClickhouseResult = new StartWorkflowOptimizeClickhouseResult$Type();
// @generated message type with reflection information, may provide speed optimized methods
class StartWorkflowCreateOrganisationRequest$Type extends MessageType<StartWorkflowCreateOrganisationRequest> {
    constructor() {
        super("api.StartWorkflowCreateOrganisationRequest", [
            { no: 1, name: "OrganisationID", kind: "scalar", jsonName: "OrganisationID", T: 9 /*ScalarType.STRING*/ },
            { no: 2, name: "ManagerEmail", kind: "scalar", jsonName: "ManagerEmail", T: 9 /*ScalarType.STRING*/ },
            { no: 3, name: "UserSub", kind: "scalar", jsonName: "UserSub", T: 9 /*ScalarType.STRING*/ },
            { no: 4, name: "Modules", kind: "message", jsonName: "Modules", repeat: 1 /*RepeatType.PACKED*/, T: () => Module }
        ], { "grpc.gateway.protoc_gen_openapiv2.options.openapiv2_schema": { jsonSchema: { required: ["OrganisationID", "UserSub", "ManagerEmail"] } } });
    }
    create(value?: PartialMessage<StartWorkflowCreateOrganisationRequest>): StartWorkflowCreateOrganisationRequest {
        const message = globalThis.Object.create((this.messagePrototype!));
        message.organisationID = "";
        message.managerEmail = "";
        message.userSub = "";
        message.modules = [];
        if (value !== undefined)
            reflectionMergePartial<StartWorkflowCreateOrganisationRequest>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: StartWorkflowCreateOrganisationRequest): StartWorkflowCreateOrganisationRequest {
        let message = target ?? this.create(), end = reader.pos + length;
        while (reader.pos < end) {
            let [fieldNo, wireType] = reader.tag();
            switch (fieldNo) {
                case /* string OrganisationID = 1 [json_name = "OrganisationID"];*/ 1:
                    message.organisationID = reader.string();
                    break;
                case /* string ManagerEmail = 2 [json_name = "ManagerEmail"];*/ 2:
                    message.managerEmail = reader.string();
                    break;
                case /* string UserSub = 3 [json_name = "UserSub"];*/ 3:
                    message.userSub = reader.string();
                    break;
                case /* repeated api.Module Modules = 4 [json_name = "Modules"];*/ 4:
                    message.modules.push(Module.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: StartWorkflowCreateOrganisationRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
        /* string OrganisationID = 1 [json_name = "OrganisationID"]; */
        if (message.organisationID !== "")
            writer.tag(1, WireType.LengthDelimited).string(message.organisationID);
        /* string ManagerEmail = 2 [json_name = "ManagerEmail"]; */
        if (message.managerEmail !== "")
            writer.tag(2, WireType.LengthDelimited).string(message.managerEmail);
        /* string UserSub = 3 [json_name = "UserSub"]; */
        if (message.userSub !== "")
            writer.tag(3, WireType.LengthDelimited).string(message.userSub);
        /* repeated api.Module Modules = 4 [json_name = "Modules"]; */
        for (let i = 0; i < message.modules.length; i++)
            Module.internalBinaryWrite(message.modules[i], writer.tag(4, 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.StartWorkflowCreateOrganisationRequest
 */
export const StartWorkflowCreateOrganisationRequest = new StartWorkflowCreateOrganisationRequest$Type();
// @generated message type with reflection information, may provide speed optimized methods
class StartWorkflowCreateOrganisationResult$Type extends MessageType<StartWorkflowCreateOrganisationResult> {
    constructor() {
        super("api.StartWorkflowCreateOrganisationResult", [
            { no: 1, name: "WorkflowExecution", kind: "message", jsonName: "WorkflowExecution", T: () => WorkflowExecutionResult }
        ]);
    }
    create(value?: PartialMessage<StartWorkflowCreateOrganisationResult>): StartWorkflowCreateOrganisationResult {
        const message = globalThis.Object.create((this.messagePrototype!));
        if (value !== undefined)
            reflectionMergePartial<StartWorkflowCreateOrganisationResult>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: StartWorkflowCreateOrganisationResult): StartWorkflowCreateOrganisationResult {
        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: StartWorkflowCreateOrganisationResult, 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.StartWorkflowCreateOrganisationResult
 */
export const StartWorkflowCreateOrganisationResult = new StartWorkflowCreateOrganisationResult$Type();
// @generated message type with reflection information, may provide speed optimized methods
class StartWorkflowDeleteOrganisationRequest$Type extends MessageType<StartWorkflowDeleteOrganisationRequest> {
    constructor() {
        super("api.StartWorkflowDeleteOrganisationRequest", [
            { no: 1, name: "OrganisationID", kind: "scalar", jsonName: "OrganisationID", T: 9 /*ScalarType.STRING*/ },
            { no: 2, name: "UserID", kind: "scalar", jsonName: "UserID", T: 9 /*ScalarType.STRING*/ }
        ], { "grpc.gateway.protoc_gen_openapiv2.options.openapiv2_schema": { jsonSchema: { required: ["OrganisationID", "UserSub"] } } });
    }
    create(value?: PartialMessage<StartWorkflowDeleteOrganisationRequest>): StartWorkflowDeleteOrganisationRequest {
        const message = globalThis.Object.create((this.messagePrototype!));
        message.organisationID = "";
        message.userID = "";
        if (value !== undefined)
            reflectionMergePartial<StartWorkflowDeleteOrganisationRequest>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: StartWorkflowDeleteOrganisationRequest): StartWorkflowDeleteOrganisationRequest {
        let message = target ?? this.create(), end = reader.pos + length;
        while (reader.pos < end) {
            let [fieldNo, wireType] = reader.tag();
            switch (fieldNo) {
                case /* string OrganisationID = 1 [json_name = "OrganisationID"];*/ 1:
                    message.organisationID = reader.string();
                    break;
                case /* string UserID = 2 [json_name = "UserID"];*/ 2:
                    message.userID = 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: StartWorkflowDeleteOrganisationRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
        /* string OrganisationID = 1 [json_name = "OrganisationID"]; */
        if (message.organisationID !== "")
            writer.tag(1, WireType.LengthDelimited).string(message.organisationID);
        /* string UserID = 2 [json_name = "UserID"]; */
        if (message.userID !== "")
            writer.tag(2, WireType.LengthDelimited).string(message.userID);
        let u = options.writeUnknownFields;
        if (u !== false)
            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
        return writer;
    }
}
/**
 * @generated MessageType for protobuf message api.StartWorkflowDeleteOrganisationRequest
 */
export const StartWorkflowDeleteOrganisationRequest = new StartWorkflowDeleteOrganisationRequest$Type();
// @generated message type with reflection information, may provide speed optimized methods
class StartWorkflowDeleteOrganisationResult$Type extends MessageType<StartWorkflowDeleteOrganisationResult> {
    constructor() {
        super("api.StartWorkflowDeleteOrganisationResult", [
            { no: 1, name: "WorkflowExecution", kind: "message", jsonName: "WorkflowExecution", T: () => WorkflowExecutionResult }
        ]);
    }
    create(value?: PartialMessage<StartWorkflowDeleteOrganisationResult>): StartWorkflowDeleteOrganisationResult {
        const message = globalThis.Object.create((this.messagePrototype!));
        if (value !== undefined)
            reflectionMergePartial<StartWorkflowDeleteOrganisationResult>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: StartWorkflowDeleteOrganisationResult): StartWorkflowDeleteOrganisationResult {
        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: StartWorkflowDeleteOrganisationResult, 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.StartWorkflowDeleteOrganisationResult
 */
export const StartWorkflowDeleteOrganisationResult = new StartWorkflowDeleteOrganisationResult$Type();
// @generated message type with reflection information, may provide speed optimized methods
class StartWorkflowRecoverDataRequest$Type extends MessageType<StartWorkflowRecoverDataRequest> {
    constructor() {
        super("api.StartWorkflowRecoverDataRequest", [
            { no: 1, name: "ProjectID", kind: "scalar", jsonName: "ProjectID", T: 9 /*ScalarType.STRING*/, options: { "validate.rules": { string: { minLen: "1" } } } },
            { no: 2, name: "Entity", kind: "enum", jsonName: "Entity", T: () => ["api.ModelDataSetEnum", ModelDataSetEnum] },
            { no: 3, name: "RecoveryType", kind: "enum", jsonName: "RecoveryType", T: () => ["api.RecoverType", RecoverType] },
            { no: 4, name: "ClearEntityData", kind: "scalar", jsonName: "ClearEntityData", T: 8 /*ScalarType.BOOL*/ },
            { no: 6, name: "RestartJob", kind: "scalar", jsonName: "RestartJob", T: 8 /*ScalarType.BOOL*/ },
            { no: 7, name: "OrganisationID", kind: "scalar", jsonName: "OrganisationID", T: 9 /*ScalarType.STRING*/, options: { "validate.rules": { string: { minLen: "1" } } } }
        ], { "grpc.gateway.protoc_gen_openapiv2.options.openapiv2_schema": { jsonSchema: { required: ["ProjectID", "Entity", "RecoveryType", "OrganisationID"] } } });
    }
    create(value?: PartialMessage<StartWorkflowRecoverDataRequest>): StartWorkflowRecoverDataRequest {
        const message = globalThis.Object.create((this.messagePrototype!));
        message.projectID = "";
        message.entity = 0;
        message.recoveryType = 0;
        message.clearEntityData = false;
        message.restartJob = false;
        message.organisationID = "";
        if (value !== undefined)
            reflectionMergePartial<StartWorkflowRecoverDataRequest>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: StartWorkflowRecoverDataRequest): StartWorkflowRecoverDataRequest {
        let message = target ?? this.create(), end = reader.pos + length;
        while (reader.pos < end) {
            let [fieldNo, wireType] = reader.tag();
            switch (fieldNo) {
                case /* string ProjectID = 1 [json_name = "ProjectID"];*/ 1:
                    message.projectID = reader.string();
                    break;
                case /* api.ModelDataSetEnum Entity = 2 [json_name = "Entity"];*/ 2:
                    message.entity = reader.int32();
                    break;
                case /* api.RecoverType RecoveryType = 3 [json_name = "RecoveryType"];*/ 3:
                    message.recoveryType = reader.int32();
                    break;
                case /* bool ClearEntityData = 4 [json_name = "ClearEntityData"];*/ 4:
                    message.clearEntityData = reader.bool();
                    break;
                case /* bool RestartJob = 6 [json_name = "RestartJob"];*/ 6:
                    message.restartJob = reader.bool();
                    break;
                case /* string OrganisationID = 7 [json_name = "OrganisationID"];*/ 7:
                    message.organisationID = 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: StartWorkflowRecoverDataRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
        /* string ProjectID = 1 [json_name = "ProjectID"]; */
        if (message.projectID !== "")
            writer.tag(1, WireType.LengthDelimited).string(message.projectID);
        /* api.ModelDataSetEnum Entity = 2 [json_name = "Entity"]; */
        if (message.entity !== 0)
            writer.tag(2, WireType.Varint).int32(message.entity);
        /* api.RecoverType RecoveryType = 3 [json_name = "RecoveryType"]; */
        if (message.recoveryType !== 0)
            writer.tag(3, WireType.Varint).int32(message.recoveryType);
        /* bool ClearEntityData = 4 [json_name = "ClearEntityData"]; */
        if (message.clearEntityData !== false)
            writer.tag(4, WireType.Varint).bool(message.clearEntityData);
        /* bool RestartJob = 6 [json_name = "RestartJob"]; */
        if (message.restartJob !== false)
            writer.tag(6, WireType.Varint).bool(message.restartJob);
        /* string OrganisationID = 7 [json_name = "OrganisationID"]; */
        if (message.organisationID !== "")
            writer.tag(7, WireType.LengthDelimited).string(message.organisationID);
        let u = options.writeUnknownFields;
        if (u !== false)
            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
        return writer;
    }
}
/**
 * @generated MessageType for protobuf message api.StartWorkflowRecoverDataRequest
 */
export const StartWorkflowRecoverDataRequest = new StartWorkflowRecoverDataRequest$Type();
// @generated message type with reflection information, may provide speed optimized methods
class StartWorkflowRecoverDataResult$Type extends MessageType<StartWorkflowRecoverDataResult> {
    constructor() {
        super("api.StartWorkflowRecoverDataResult", [
            { no: 1, name: "WorkflowExecution", kind: "message", jsonName: "WorkflowExecution", T: () => WorkflowExecutionResult }
        ]);
    }
    create(value?: PartialMessage<StartWorkflowRecoverDataResult>): StartWorkflowRecoverDataResult {
        const message = globalThis.Object.create((this.messagePrototype!));
        if (value !== undefined)
            reflectionMergePartial<StartWorkflowRecoverDataResult>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: StartWorkflowRecoverDataResult): StartWorkflowRecoverDataResult {
        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: StartWorkflowRecoverDataResult, 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.StartWorkflowRecoverDataResult
 */
export const StartWorkflowRecoverDataResult = new StartWorkflowRecoverDataResult$Type();
// @generated message type with reflection information, may provide speed optimized methods
class StartWorkflowCheckAndLaunchRecoverDataRequest$Type extends MessageType<StartWorkflowCheckAndLaunchRecoverDataRequest> {
    constructor() {
        super("api.StartWorkflowCheckAndLaunchRecoverDataRequest", [
            { no: 1, name: "Entity", kind: "enum", jsonName: "Entity", T: () => ["api.ModelDataSetEnum", ModelDataSetEnum] },
            { no: 2, name: "RecoveryType", kind: "enum", jsonName: "RecoveryType", T: () => ["api.RecoverType", RecoverType] }
        ], { "grpc.gateway.protoc_gen_openapiv2.options.openapiv2_schema": { jsonSchema: { required: ["Entity", "RecoveryType"] } } });
    }
    create(value?: PartialMessage<StartWorkflowCheckAndLaunchRecoverDataRequest>): StartWorkflowCheckAndLaunchRecoverDataRequest {
        const message = globalThis.Object.create((this.messagePrototype!));
        message.entity = 0;
        message.recoveryType = 0;
        if (value !== undefined)
            reflectionMergePartial<StartWorkflowCheckAndLaunchRecoverDataRequest>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: StartWorkflowCheckAndLaunchRecoverDataRequest): StartWorkflowCheckAndLaunchRecoverDataRequest {
        let message = target ?? this.create(), end = reader.pos + length;
        while (reader.pos < end) {
            let [fieldNo, wireType] = reader.tag();
            switch (fieldNo) {
                case /* api.ModelDataSetEnum Entity = 1 [json_name = "Entity"];*/ 1:
                    message.entity = reader.int32();
                    break;
                case /* api.RecoverType RecoveryType = 2 [json_name = "RecoveryType"];*/ 2:
                    message.recoveryType = reader.int32();
                    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: StartWorkflowCheckAndLaunchRecoverDataRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
        /* api.ModelDataSetEnum Entity = 1 [json_name = "Entity"]; */
        if (message.entity !== 0)
            writer.tag(1, WireType.Varint).int32(message.entity);
        /* api.RecoverType RecoveryType = 2 [json_name = "RecoveryType"]; */
        if (message.recoveryType !== 0)
            writer.tag(2, WireType.Varint).int32(message.recoveryType);
        let u = options.writeUnknownFields;
        if (u !== false)
            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
        return writer;
    }
}
/**
 * @generated MessageType for protobuf message api.StartWorkflowCheckAndLaunchRecoverDataRequest
 */
export const StartWorkflowCheckAndLaunchRecoverDataRequest = new StartWorkflowCheckAndLaunchRecoverDataRequest$Type();
// @generated message type with reflection information, may provide speed optimized methods
class StartWorkflowCheckAndLaunchRecoverDataResult$Type extends MessageType<StartWorkflowCheckAndLaunchRecoverDataResult> {
    constructor() {
        super("api.StartWorkflowCheckAndLaunchRecoverDataResult", [
            { no: 1, name: "WorkflowExecution", kind: "message", jsonName: "WorkflowExecution", T: () => WorkflowExecutionResult }
        ]);
    }
    create(value?: PartialMessage<StartWorkflowCheckAndLaunchRecoverDataResult>): StartWorkflowCheckAndLaunchRecoverDataResult {
        const message = globalThis.Object.create((this.messagePrototype!));
        if (value !== undefined)
            reflectionMergePartial<StartWorkflowCheckAndLaunchRecoverDataResult>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: StartWorkflowCheckAndLaunchRecoverDataResult): StartWorkflowCheckAndLaunchRecoverDataResult {
        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: StartWorkflowCheckAndLaunchRecoverDataResult, 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.StartWorkflowCheckAndLaunchRecoverDataResult
 */
export const StartWorkflowCheckAndLaunchRecoverDataResult = new StartWorkflowCheckAndLaunchRecoverDataResult$Type();
// @generated message type with reflection information, may provide speed optimized methods
class StartWorkflowUpdateMaterializedViewRequest$Type extends MessageType<StartWorkflowUpdateMaterializedViewRequest> {
    constructor() {
        super("api.StartWorkflowUpdateMaterializedViewRequest", [
            { no: 1, name: "ProjectID", kind: "scalar", jsonName: "ProjectID", T: 9 /*ScalarType.STRING*/, options: { "validate.rules": { string: { minLen: "1" } } } },
            { no: 2, name: "OrganisationID", kind: "scalar", jsonName: "OrganisationID", T: 9 /*ScalarType.STRING*/, options: { "validate.rules": { string: { minLen: "1" } } } }
        ], { "grpc.gateway.protoc_gen_openapiv2.options.openapiv2_schema": { jsonSchema: { required: ["ProjectID", "OrganisationID"] } } });
    }
    create(value?: PartialMessage<StartWorkflowUpdateMaterializedViewRequest>): StartWorkflowUpdateMaterializedViewRequest {
        const message = globalThis.Object.create((this.messagePrototype!));
        message.projectID = "";
        message.organisationID = "";
        if (value !== undefined)
            reflectionMergePartial<StartWorkflowUpdateMaterializedViewRequest>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: StartWorkflowUpdateMaterializedViewRequest): StartWorkflowUpdateMaterializedViewRequest {
        let message = target ?? this.create(), end = reader.pos + length;
        while (reader.pos < end) {
            let [fieldNo, wireType] = reader.tag();
            switch (fieldNo) {
                case /* string ProjectID = 1 [json_name = "ProjectID"];*/ 1:
                    message.projectID = reader.string();
                    break;
                case /* string OrganisationID = 2 [json_name = "OrganisationID"];*/ 2:
                    message.organisationID = 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: StartWorkflowUpdateMaterializedViewRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
        /* string ProjectID = 1 [json_name = "ProjectID"]; */
        if (message.projectID !== "")
            writer.tag(1, WireType.LengthDelimited).string(message.projectID);
        /* string OrganisationID = 2 [json_name = "OrganisationID"]; */
        if (message.organisationID !== "")
            writer.tag(2, WireType.LengthDelimited).string(message.organisationID);
        let u = options.writeUnknownFields;
        if (u !== false)
            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
        return writer;
    }
}
/**
 * @generated MessageType for protobuf message api.StartWorkflowUpdateMaterializedViewRequest
 */
export const StartWorkflowUpdateMaterializedViewRequest = new StartWorkflowUpdateMaterializedViewRequest$Type();
// @generated message type with reflection information, may provide speed optimized methods
class StartWorkflowUpdateMaterializedViewResult$Type extends MessageType<StartWorkflowUpdateMaterializedViewResult> {
    constructor() {
        super("api.StartWorkflowUpdateMaterializedViewResult", [
            { no: 1, name: "WorkflowExecution", kind: "message", jsonName: "WorkflowExecution", T: () => WorkflowExecutionResult }
        ]);
    }
    create(value?: PartialMessage<StartWorkflowUpdateMaterializedViewResult>): StartWorkflowUpdateMaterializedViewResult {
        const message = globalThis.Object.create((this.messagePrototype!));
        if (value !== undefined)
            reflectionMergePartial<StartWorkflowUpdateMaterializedViewResult>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: StartWorkflowUpdateMaterializedViewResult): StartWorkflowUpdateMaterializedViewResult {
        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: StartWorkflowUpdateMaterializedViewResult, 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.StartWorkflowUpdateMaterializedViewResult
 */
export const StartWorkflowUpdateMaterializedViewResult = new StartWorkflowUpdateMaterializedViewResult$Type();
// @generated message type with reflection information, may provide speed optimized methods
class GetWorkflowStateRequest$Type extends MessageType<GetWorkflowStateRequest> {
    constructor() {
        super("api.GetWorkflowStateRequest", [
            { no: 1, name: "WorkflowExecution", kind: "message", jsonName: "WorkflowExecution", T: () => WorkflowExecutionResult }
        ], { "grpc.gateway.protoc_gen_openapiv2.options.openapiv2_schema": { jsonSchema: { required: ["WorkflowExecution"] } } });
    }
    create(value?: PartialMessage<GetWorkflowStateRequest>): GetWorkflowStateRequest {
        const message = globalThis.Object.create((this.messagePrototype!));
        if (value !== undefined)
            reflectionMergePartial<GetWorkflowStateRequest>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: GetWorkflowStateRequest): GetWorkflowStateRequest {
        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: GetWorkflowStateRequest, 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.GetWorkflowStateRequest
 */
export const GetWorkflowStateRequest = new GetWorkflowStateRequest$Type();
// @generated message type with reflection information, may provide speed optimized methods
class GetWorkflowStateResult$Type extends MessageType<GetWorkflowStateResult> {
    constructor() {
        super("api.GetWorkflowStateResult", [
            { no: 1, name: "State", kind: "scalar", jsonName: "State", T: 9 /*ScalarType.STRING*/ }
        ]);
    }
    create(value?: PartialMessage<GetWorkflowStateResult>): GetWorkflowStateResult {
        const message = globalThis.Object.create((this.messagePrototype!));
        message.state = "";
        if (value !== undefined)
            reflectionMergePartial<GetWorkflowStateResult>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: GetWorkflowStateResult): GetWorkflowStateResult {
        let message = target ?? this.create(), end = reader.pos + length;
        while (reader.pos < end) {
            let [fieldNo, wireType] = reader.tag();
            switch (fieldNo) {
                case /* string State = 1 [json_name = "State"];*/ 1:
                    message.state = 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: GetWorkflowStateResult, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
        /* string State = 1 [json_name = "State"]; */
        if (message.state !== "")
            writer.tag(1, WireType.LengthDelimited).string(message.state);
        let u = options.writeUnknownFields;
        if (u !== false)
            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
        return writer;
    }
}
/**
 * @generated MessageType for protobuf message api.GetWorkflowStateResult
 */
export const GetWorkflowStateResult = new GetWorkflowStateResult$Type();
// @generated message type with reflection information, may provide speed optimized methods
class GetWorkflowExecutionInformationsRequest$Type extends MessageType<GetWorkflowExecutionInformationsRequest> {
    constructor() {
        super("api.GetWorkflowExecutionInformationsRequest", [
            { no: 1, name: "WorkflowExecution", kind: "message", jsonName: "WorkflowExecution", T: () => WorkflowExecutionResult }
        ], { "grpc.gateway.protoc_gen_openapiv2.options.openapiv2_schema": { jsonSchema: { required: ["WorkflowExecution"] } } });
    }
    create(value?: PartialMessage<GetWorkflowExecutionInformationsRequest>): GetWorkflowExecutionInformationsRequest {
        const message = globalThis.Object.create((this.messagePrototype!));
        if (value !== undefined)
            reflectionMergePartial<GetWorkflowExecutionInformationsRequest>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: GetWorkflowExecutionInformationsRequest): GetWorkflowExecutionInformationsRequest {
        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: GetWorkflowExecutionInformationsRequest, 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.GetWorkflowExecutionInformationsRequest
 */
export const GetWorkflowExecutionInformationsRequest = new GetWorkflowExecutionInformationsRequest$Type();
// @generated message type with reflection information, may provide speed optimized methods
class GetWorkflowExecutionInformationsResult$Type extends MessageType<GetWorkflowExecutionInformationsResult> {
    constructor() {
        super("api.GetWorkflowExecutionInformationsResult", [
            { no: 1, name: "WorkflowExecutionInformations", kind: "scalar", jsonName: "WorkflowExecutionInformations", T: 9 /*ScalarType.STRING*/ }
        ]);
    }
    create(value?: PartialMessage<GetWorkflowExecutionInformationsResult>): GetWorkflowExecutionInformationsResult {
        const message = globalThis.Object.create((this.messagePrototype!));
        message.workflowExecutionInformations = "";
        if (value !== undefined)
            reflectionMergePartial<GetWorkflowExecutionInformationsResult>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: GetWorkflowExecutionInformationsResult): GetWorkflowExecutionInformationsResult {
        let message = target ?? this.create(), end = reader.pos + length;
        while (reader.pos < end) {
            let [fieldNo, wireType] = reader.tag();
            switch (fieldNo) {
                case /* string WorkflowExecutionInformations = 1 [json_name = "WorkflowExecutionInformations"];*/ 1:
                    message.workflowExecutionInformations = 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: GetWorkflowExecutionInformationsResult, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
        /* string WorkflowExecutionInformations = 1 [json_name = "WorkflowExecutionInformations"]; */
        if (message.workflowExecutionInformations !== "")
            writer.tag(1, WireType.LengthDelimited).string(message.workflowExecutionInformations);
        let u = options.writeUnknownFields;
        if (u !== false)
            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
        return writer;
    }
}
/**
 * @generated MessageType for protobuf message api.GetWorkflowExecutionInformationsResult
 */
export const GetWorkflowExecutionInformationsResult = new GetWorkflowExecutionInformationsResult$Type();
// @generated message type with reflection information, may provide speed optimized methods
class StartWorkflowDailyProjectsOperationsRequest$Type extends MessageType<StartWorkflowDailyProjectsOperationsRequest> {
    constructor() {
        super("api.StartWorkflowDailyProjectsOperationsRequest", [], { "grpc.gateway.protoc_gen_openapiv2.options.openapiv2_schema": { jsonSchema: {} } });
    }
    create(value?: PartialMessage<StartWorkflowDailyProjectsOperationsRequest>): StartWorkflowDailyProjectsOperationsRequest {
        const message = globalThis.Object.create((this.messagePrototype!));
        if (value !== undefined)
            reflectionMergePartial<StartWorkflowDailyProjectsOperationsRequest>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: StartWorkflowDailyProjectsOperationsRequest): StartWorkflowDailyProjectsOperationsRequest {
        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: StartWorkflowDailyProjectsOperationsRequest, 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.StartWorkflowDailyProjectsOperationsRequest
 */
export const StartWorkflowDailyProjectsOperationsRequest = new StartWorkflowDailyProjectsOperationsRequest$Type();
// @generated message type with reflection information, may provide speed optimized methods
class StartWorkflowDailyProjectsOperationsResult$Type extends MessageType<StartWorkflowDailyProjectsOperationsResult> {
    constructor() {
        super("api.StartWorkflowDailyProjectsOperationsResult", [
            { no: 1, name: "WorkflowExecution", kind: "message", jsonName: "WorkflowExecution", T: () => WorkflowExecutionResult }
        ]);
    }
    create(value?: PartialMessage<StartWorkflowDailyProjectsOperationsResult>): StartWorkflowDailyProjectsOperationsResult {
        const message = globalThis.Object.create((this.messagePrototype!));
        if (value !== undefined)
            reflectionMergePartial<StartWorkflowDailyProjectsOperationsResult>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: StartWorkflowDailyProjectsOperationsResult): StartWorkflowDailyProjectsOperationsResult {
        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: StartWorkflowDailyProjectsOperationsResult, 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.StartWorkflowDailyProjectsOperationsResult
 */
export const StartWorkflowDailyProjectsOperationsResult = new StartWorkflowDailyProjectsOperationsResult$Type();
// @generated message type with reflection information, may provide speed optimized methods
class StartWorkflowHealthCheckWorkflowsRequest$Type extends MessageType<StartWorkflowHealthCheckWorkflowsRequest> {
    constructor() {
        super("api.StartWorkflowHealthCheckWorkflowsRequest", [], { "grpc.gateway.protoc_gen_openapiv2.options.openapiv2_schema": { jsonSchema: {} } });
    }
    create(value?: PartialMessage<StartWorkflowHealthCheckWorkflowsRequest>): StartWorkflowHealthCheckWorkflowsRequest {
        const message = globalThis.Object.create((this.messagePrototype!));
        if (value !== undefined)
            reflectionMergePartial<StartWorkflowHealthCheckWorkflowsRequest>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: StartWorkflowHealthCheckWorkflowsRequest): StartWorkflowHealthCheckWorkflowsRequest {
        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: StartWorkflowHealthCheckWorkflowsRequest, 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.StartWorkflowHealthCheckWorkflowsRequest
 */
export const StartWorkflowHealthCheckWorkflowsRequest = new StartWorkflowHealthCheckWorkflowsRequest$Type();
// @generated message type with reflection information, may provide speed optimized methods
class StartWorkflowHealthCheckWorkflowsResult$Type extends MessageType<StartWorkflowHealthCheckWorkflowsResult> {
    constructor() {
        super("api.StartWorkflowHealthCheckWorkflowsResult", [
            { no: 1, name: "WorkflowExecution", kind: "message", jsonName: "WorkflowExecution", T: () => WorkflowExecutionResult }
        ]);
    }
    create(value?: PartialMessage<StartWorkflowHealthCheckWorkflowsResult>): StartWorkflowHealthCheckWorkflowsResult {
        const message = globalThis.Object.create((this.messagePrototype!));
        if (value !== undefined)
            reflectionMergePartial<StartWorkflowHealthCheckWorkflowsResult>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: StartWorkflowHealthCheckWorkflowsResult): StartWorkflowHealthCheckWorkflowsResult {
        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: StartWorkflowHealthCheckWorkflowsResult, 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.StartWorkflowHealthCheckWorkflowsResult
 */
export const StartWorkflowHealthCheckWorkflowsResult = new StartWorkflowHealthCheckWorkflowsResult$Type();
// @generated message type with reflection information, may provide speed optimized methods
class StartWorkflowPruneDataRequest$Type extends MessageType<StartWorkflowPruneDataRequest> {
    constructor() {
        super("api.StartWorkflowPruneDataRequest", [
            { no: 1, name: "OrganisationID", kind: "scalar", jsonName: "OrganisationID", T: 9 /*ScalarType.STRING*/ },
            { no: 2, name: "ProjectID", kind: "scalar", jsonName: "ProjectID", T: 9 /*ScalarType.STRING*/ },
            { no: 3, name: "Entity", kind: "enum", jsonName: "Entity", T: () => ["api.ModelDataSetEnum", ModelDataSetEnum] }
        ], { "grpc.gateway.protoc_gen_openapiv2.options.openapiv2_schema": { jsonSchema: { required: ["OrganisationID", "ProjectID", "Entity"] } } });
    }
    create(value?: PartialMessage<StartWorkflowPruneDataRequest>): StartWorkflowPruneDataRequest {
        const message = globalThis.Object.create((this.messagePrototype!));
        message.organisationID = "";
        message.projectID = "";
        message.entity = 0;
        if (value !== undefined)
            reflectionMergePartial<StartWorkflowPruneDataRequest>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: StartWorkflowPruneDataRequest): StartWorkflowPruneDataRequest {
        let message = target ?? this.create(), end = reader.pos + length;
        while (reader.pos < end) {
            let [fieldNo, wireType] = reader.tag();
            switch (fieldNo) {
                case /* string OrganisationID = 1 [json_name = "OrganisationID"];*/ 1:
                    message.organisationID = reader.string();
                    break;
                case /* string ProjectID = 2 [json_name = "ProjectID"];*/ 2:
                    message.projectID = reader.string();
                    break;
                case /* api.ModelDataSetEnum Entity = 3 [json_name = "Entity"];*/ 3:
                    message.entity = reader.int32();
                    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: StartWorkflowPruneDataRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
        /* string OrganisationID = 1 [json_name = "OrganisationID"]; */
        if (message.organisationID !== "")
            writer.tag(1, WireType.LengthDelimited).string(message.organisationID);
        /* string ProjectID = 2 [json_name = "ProjectID"]; */
        if (message.projectID !== "")
            writer.tag(2, WireType.LengthDelimited).string(message.projectID);
        /* api.ModelDataSetEnum Entity = 3 [json_name = "Entity"]; */
        if (message.entity !== 0)
            writer.tag(3, WireType.Varint).int32(message.entity);
        let u = options.writeUnknownFields;
        if (u !== false)
            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
        return writer;
    }
}
/**
 * @generated MessageType for protobuf message api.StartWorkflowPruneDataRequest
 */
export const StartWorkflowPruneDataRequest = new StartWorkflowPruneDataRequest$Type();
// @generated message type with reflection information, may provide speed optimized methods
class StartWorkflowPruneDataResult$Type extends MessageType<StartWorkflowPruneDataResult> {
    constructor() {
        super("api.StartWorkflowPruneDataResult", [
            { no: 1, name: "WorkflowExecution", kind: "message", jsonName: "WorkflowExecution", T: () => WorkflowExecutionResult }
        ]);
    }
    create(value?: PartialMessage<StartWorkflowPruneDataResult>): StartWorkflowPruneDataResult {
        const message = globalThis.Object.create((this.messagePrototype!));
        if (value !== undefined)
            reflectionMergePartial<StartWorkflowPruneDataResult>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: StartWorkflowPruneDataResult): StartWorkflowPruneDataResult {
        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: StartWorkflowPruneDataResult, 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.StartWorkflowPruneDataResult
 */
export const StartWorkflowPruneDataResult = new StartWorkflowPruneDataResult$Type();
// @generated message type with reflection information, may provide speed optimized methods
class StartWorkflowSynchronizeRulesOnGitRequest$Type extends MessageType<StartWorkflowSynchronizeRulesOnGitRequest> {
    constructor() {
        super("api.StartWorkflowSynchronizeRulesOnGitRequest", [], { "grpc.gateway.protoc_gen_openapiv2.options.openapiv2_schema": { jsonSchema: {} } });
    }
    create(value?: PartialMessage<StartWorkflowSynchronizeRulesOnGitRequest>): StartWorkflowSynchronizeRulesOnGitRequest {
        const message = globalThis.Object.create((this.messagePrototype!));
        if (value !== undefined)
            reflectionMergePartial<StartWorkflowSynchronizeRulesOnGitRequest>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: StartWorkflowSynchronizeRulesOnGitRequest): StartWorkflowSynchronizeRulesOnGitRequest {
        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: StartWorkflowSynchronizeRulesOnGitRequest, 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.StartWorkflowSynchronizeRulesOnGitRequest
 */
export const StartWorkflowSynchronizeRulesOnGitRequest = new StartWorkflowSynchronizeRulesOnGitRequest$Type();
// @generated message type with reflection information, may provide speed optimized methods
class StartWorkflowSynchronizeRulesOnGitResult$Type extends MessageType<StartWorkflowSynchronizeRulesOnGitResult> {
    constructor() {
        super("api.StartWorkflowSynchronizeRulesOnGitResult", [
            { no: 1, name: "WorkflowExecution", kind: "message", jsonName: "WorkflowExecution", T: () => WorkflowExecutionResult }
        ]);
    }
    create(value?: PartialMessage<StartWorkflowSynchronizeRulesOnGitResult>): StartWorkflowSynchronizeRulesOnGitResult {
        const message = globalThis.Object.create((this.messagePrototype!));
        if (value !== undefined)
            reflectionMergePartial<StartWorkflowSynchronizeRulesOnGitResult>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: StartWorkflowSynchronizeRulesOnGitResult): StartWorkflowSynchronizeRulesOnGitResult {
        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: StartWorkflowSynchronizeRulesOnGitResult, 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.StartWorkflowSynchronizeRulesOnGitResult
 */
export const StartWorkflowSynchronizeRulesOnGitResult = new StartWorkflowSynchronizeRulesOnGitResult$Type();
// @generated message type with reflection information, may provide speed optimized methods
class StartWorkflowAnonymizeDataRequest$Type extends MessageType<StartWorkflowAnonymizeDataRequest> {
    constructor() {
        super("api.StartWorkflowAnonymizeDataRequest", [
            { no: 1, name: "OrganisationID", kind: "scalar", jsonName: "OrganisationID", T: 9 /*ScalarType.STRING*/ },
            { no: 2, name: "ProjectID", kind: "scalar", jsonName: "ProjectID", T: 9 /*ScalarType.STRING*/ },
            { no: 3, name: "Entity", kind: "enum", jsonName: "Entity", T: () => ["api.ModelDataSetEnum", ModelDataSetEnum] }
        ], { "grpc.gateway.protoc_gen_openapiv2.options.openapiv2_schema": { jsonSchema: { required: ["OrganisationID", "ProjectID", "Entity"] } } });
    }
    create(value?: PartialMessage<StartWorkflowAnonymizeDataRequest>): StartWorkflowAnonymizeDataRequest {
        const message = globalThis.Object.create((this.messagePrototype!));
        message.organisationID = "";
        message.projectID = "";
        message.entity = 0;
        if (value !== undefined)
            reflectionMergePartial<StartWorkflowAnonymizeDataRequest>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: StartWorkflowAnonymizeDataRequest): StartWorkflowAnonymizeDataRequest {
        let message = target ?? this.create(), end = reader.pos + length;
        while (reader.pos < end) {
            let [fieldNo, wireType] = reader.tag();
            switch (fieldNo) {
                case /* string OrganisationID = 1 [json_name = "OrganisationID"];*/ 1:
                    message.organisationID = reader.string();
                    break;
                case /* string ProjectID = 2 [json_name = "ProjectID"];*/ 2:
                    message.projectID = reader.string();
                    break;
                case /* api.ModelDataSetEnum Entity = 3 [json_name = "Entity"];*/ 3:
                    message.entity = reader.int32();
                    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: StartWorkflowAnonymizeDataRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
        /* string OrganisationID = 1 [json_name = "OrganisationID"]; */
        if (message.organisationID !== "")
            writer.tag(1, WireType.LengthDelimited).string(message.organisationID);
        /* string ProjectID = 2 [json_name = "ProjectID"]; */
        if (message.projectID !== "")
            writer.tag(2, WireType.LengthDelimited).string(message.projectID);
        /* api.ModelDataSetEnum Entity = 3 [json_name = "Entity"]; */
        if (message.entity !== 0)
            writer.tag(3, WireType.Varint).int32(message.entity);
        let u = options.writeUnknownFields;
        if (u !== false)
            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
        return writer;
    }
}
/**
 * @generated MessageType for protobuf message api.StartWorkflowAnonymizeDataRequest
 */
export const StartWorkflowAnonymizeDataRequest = new StartWorkflowAnonymizeDataRequest$Type();
// @generated message type with reflection information, may provide speed optimized methods
class StartWorkflowAnonymizeDataResult$Type extends MessageType<StartWorkflowAnonymizeDataResult> {
    constructor() {
        super("api.StartWorkflowAnonymizeDataResult", [
            { no: 1, name: "WorkflowExecution", kind: "message", jsonName: "WorkflowExecution", T: () => WorkflowExecutionResult }
        ]);
    }
    create(value?: PartialMessage<StartWorkflowAnonymizeDataResult>): StartWorkflowAnonymizeDataResult {
        const message = globalThis.Object.create((this.messagePrototype!));
        if (value !== undefined)
            reflectionMergePartial<StartWorkflowAnonymizeDataResult>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: StartWorkflowAnonymizeDataResult): StartWorkflowAnonymizeDataResult {
        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: StartWorkflowAnonymizeDataResult, 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.StartWorkflowAnonymizeDataResult
 */
export const StartWorkflowAnonymizeDataResult = new StartWorkflowAnonymizeDataResult$Type();
/**
 * @generated ServiceType for protobuf service api.WorkflowService
 */
export const WorkflowService = new ServiceType("api.WorkflowService", [
    { name: "RetryWorkflow", options: { "grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation": { tags: ["Admin Workflow"], description: "Retry a stopped workflow where it left off" }, "api.rscType": "Platform", "api.roles": "Platform.Workflow", "google.api.method_visibility": { restriction: "INTERNAL" } }, I: RetryWorkflowRequest, O: RetryWorkflowResult },
    { name: "StartWorkflowCreateProject", options: { "grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation": { tags: ["Admin Workflow"], description: "Start a workflow CreateProject" }, "api.rscType": "Platform", "api.roles": "Platform.Workflow", "google.api.method_visibility": { restriction: "INTERNAL" } }, I: StartWorkflowCreateProjectRequest, O: StartWorkflowCreateProjectResult },
    { name: "StartWorkflowDeleteProject", options: { "grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation": { tags: ["Admin Workflow"], description: "Start a workflow DeleteProject" }, "api.rscType": "Platform", "api.roles": "Platform.Workflow", "google.api.method_visibility": { restriction: "INTERNAL" } }, I: StartWorkflowDeleteProjectRequest, O: StartWorkflowDeleteProjectResult },
    { name: "StartWorkflowDeleteCore", options: { "grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation": { tags: ["Admin Workflow"], description: "Start a workflow DeleteCore" }, "api.rscType": "Platform", "api.roles": "Platform.Workflow", "google.api.method_visibility": { restriction: "INTERNAL" } }, I: StartWorkflowDeleteCoreRequest, O: StartWorkflowDeleteCoreResult },
    { name: "StartWorkflowDeletePartnerApp", options: { "grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation": { tags: ["Admin Workflow"], description: "Start a workflow DeletePartnerApp" }, "api.rscType": "Platform", "api.roles": "Platform.Workflow", "google.api.method_visibility": { restriction: "INTERNAL" } }, I: StartWorkflowDeletePartnerAppRequest, O: StartWorkflowDeletePartnerAppResult },
    { name: "StartWorkflowDeleteConnection", options: { "grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation": { tags: ["Admin Workflow"], description: "Start a workflow DeleteConnection" }, "api.rscType": "Platform", "api.roles": "Platform.Workflow", "google.api.method_visibility": { restriction: "INTERNAL" } }, I: StartWorkflowDeleteConnectionRequest, O: StartWorkflowDeleteConnectionResult },
    { name: "StartWorkflowBilling", options: { "grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation": { tags: ["Admin Workflow"], description: "Start a workflow Billing" }, "api.rscType": "Platform", "api.roles": "Platform.Workflow", "google.api.method_visibility": { restriction: "INTERNAL" } }, I: StartWorkflowBillingRequest, O: StartWorkflowBillingResult },
    { name: "StopWorkflowBilling", options: { "grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation": { tags: ["Admin Workflow"], description: "Stop the Billing workflow" }, "api.rscType": "Platform", "api.roles": "Platform.Workflow", "google.api.method_visibility": { restriction: "INTERNAL" } }, I: StopWorkflowBillingRequest, O: StopWorkflowBillingResult },
    { name: "StartWorkflowExtractDataFromDB", options: { "grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation": { tags: ["Admin Workflow"], description: "Start a workflow ExtractDataFromDB" }, "api.rscType": "Platform", "api.roles": "Platform.Workflow", "google.api.method_visibility": { restriction: "INTERNAL" } }, I: StartWorkflowExtractDataFromDBRequest, O: StartWorkflowExtractDataFromDBResult },
    { name: "RegisterModuleWorkflows", options: { "grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation": { tags: ["Admin Workflow"], description: "Register module child workflows to be executed after or before a core workflow" }, "api.rscType": "Platform", "api.roles": "Platform.Workflow", "google.api.method_visibility": { restriction: "INTERNAL" } }, I: RegisterModuleWorkflowsRequest, O: RegisterModuleWorkflowsResult },
    { name: "DeregisterModuleWorkflows", options: { "grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation": { tags: ["Admin Workflow"], description: "Deregister module child workflow" }, "api.rscType": "Platform", "api.roles": "Platform.Workflow", "google.api.method_visibility": { restriction: "INTERNAL" } }, I: DeregisterModuleWorkflowsRequest, O: DeregisterModuleWorkflowsResult },
    { name: "GetModuleWorkflows", options: { "grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation": { tags: ["Admin Workflow"], description: "Get module child workflow for a workflow type" }, "api.rscType": "Platform", "api.roles": "Platform.Workflow", "google.api.method_visibility": { restriction: "INTERNAL" } }, I: GetModuleWorkflowsRequest, O: GetModuleWorkflowsResult },
    { name: "StopWorkflow", options: { "grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation": { tags: ["Admin Workflow"], description: "Terminates a workflow execution" }, "api.rscType": "Platform", "api.roles": "Platform.Workflow", "google.api.method_visibility": { restriction: "INTERNAL" } }, I: StopWorkflowRequest, O: StopWorkflowResult },
    { name: "StartWorkflowOptimizeClickhouse", options: { "grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation": { tags: ["Admin Workflow"], description: "Start a workflow which will periodically launch optimize clikhouse operation for all projects in the platform" }, "api.rscType": "Platform", "api.roles": "Platform.Workflow", "google.api.method_visibility": { restriction: "INTERNAL" } }, I: StartWorkflowOptimizeClickhouseRequest, O: StartWorkflowOptimizeClickhouseResult },
    { name: "StartWorkflowCreateOrganisation", options: { "grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation": { tags: ["Admin Workflow"], description: "Start a workflow which will create an organisation" }, "api.rscType": "Platform", "api.roles": "Platform.Workflow", "google.api.method_visibility": { restriction: "INTERNAL" } }, I: StartWorkflowCreateOrganisationRequest, O: StartWorkflowCreateOrganisationResult },
    { name: "StartWorkflowDeleteOrganisation", options: { "grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation": { tags: ["Admin Workflow"], description: "Start a workflow which will delete an organisation and all of its projects" }, "api.rscType": "Platform", "api.roles": "Platform.Workflow", "google.api.method_visibility": { restriction: "INTERNAL" } }, I: StartWorkflowDeleteOrganisationRequest, O: StartWorkflowDeleteOrganisationResult },
    { name: "StartWorkflowRecoverData", options: { "grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation": { tags: ["Admin Workflow"], description: "Start a workflow which will recover data from db source of truth to one of other database" }, "api.rscType": "Platform", "api.roles": "Platform.Workflow", "google.api.method_visibility": { restriction: "INTERNAL" } }, I: StartWorkflowRecoverDataRequest, O: StartWorkflowRecoverDataResult },
    { name: "StartWorkflowCheckAndLaunchRecoverData", options: { "grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation": { tags: ["Admin Workflow"], description: "Start a workflow which will check if data recovery has to be done and then launch data recovery workflow" }, "api.rscType": "Platform", "api.roles": "Platform.Workflow", "google.api.method_visibility": { restriction: "INTERNAL" } }, I: StartWorkflowCheckAndLaunchRecoverDataRequest, O: StartWorkflowCheckAndLaunchRecoverDataResult },
    { name: "StartWorkflowUpdateMaterializedView", options: { "grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation": { tags: ["Admin Workflow"], description: "Start a workflow which will recover extended view on clickhouse" }, "api.rscType": "Platform", "api.roles": "Platform.Workflow", "google.api.method_visibility": { restriction: "INTERNAL" } }, I: StartWorkflowUpdateMaterializedViewRequest, O: StartWorkflowUpdateMaterializedViewResult },
    { name: "GetWorkflowState", options: { "grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation": { tags: ["Admin Workflow"], description: "Return the json state of a workflow" }, "api.rscType": "Platform", "api.roles": "Platform.Workflow", "google.api.method_visibility": { restriction: "INTERNAL" } }, I: GetWorkflowStateRequest, O: GetWorkflowStateResult },
    { name: "GetWorkflowExecutionInformations", options: { "grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation": { tags: ["Admin Workflow"], description: "Return in json format workflow execution information of a workflow" }, "api.rscType": "Platform", "api.roles": "Platform.Workflow", "google.api.method_visibility": { restriction: "INTERNAL" } }, I: GetWorkflowExecutionInformationsRequest, O: GetWorkflowExecutionInformationsResult },
    { name: "StartWorkflowDailyProjectsOperations", options: { "grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation": { tags: ["Admin Workflow"], description: "Start a cron workflow to execute daily operations for all projects in the platform" }, "api.rscType": "Platform", "api.roles": "Platform.Workflow", "google.api.method_visibility": { restriction: "INTERNAL" } }, I: StartWorkflowDailyProjectsOperationsRequest, O: StartWorkflowDailyProjectsOperationsResult },
    { name: "StartWorkflowHealthCheckWorkflows", options: { "grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation": { tags: ["Admin Workflow"], description: "Start a cron workflow to check health of workflows in the last day in all listed domains" }, "api.rscType": "Platform", "api.roles": "Platform.Workflow", "google.api.method_visibility": { restriction: "INTERNAL" } }, I: StartWorkflowHealthCheckWorkflowsRequest, O: StartWorkflowHealthCheckWorkflowsResult },
    { name: "StartWorkflowExtractKPI", options: { "grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation": { tags: ["Admin Workflow"], description: "Start a workflow to extract kpi" }, "api.rscType": "Platform", "api.roles": "Platform.Workflow", "google.api.method_visibility": { restriction: "INTERNAL" } }, I: StartWorkflowExtractKPIRequest, O: StartWorkflowExtractKPIResult },
    { name: "StartWorkflowPruneData", options: { "grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation": { tags: ["Admin Workflow"], description: "Start a workflow to prune project entity data." }, "api.rscType": "Platform", "api.roles": "Platform.Workflow", "google.api.method_visibility": { restriction: "INTERNAL" } }, I: StartWorkflowPruneDataRequest, O: StartWorkflowPruneDataResult },
    { name: "StartWorkflowSynchronizeRulesOnGit", options: { "grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation": { tags: ["Admin Workflow"], description: "Start a workflow to synchronize rules on git" }, "api.rscType": "Platform", "api.roles": "Platform.Workflow", "google.api.method_visibility": { restriction: "INTERNAL" } }, I: StartWorkflowSynchronizeRulesOnGitRequest, O: StartWorkflowSynchronizeRulesOnGitResult },
    { name: "StartWorkflowAnonymizeData", options: { "grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation": { tags: ["Admin Workflow"], description: "Start a workflow to anonymize project entity data." }, "api.rscType": "Platform", "api.roles": "Platform.Workflow", "google.api.method_visibility": { restriction: "INTERNAL" } }, I: StartWorkflowAnonymizeDataRequest, O: StartWorkflowAnonymizeDataResult }
], { "api.k8sService": "organisation-server", "api.roleManager": true, "api.resourceManager": true });
