// @generated by protobuf-ts 2.9.6
// @generated from protobuf file "view.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 { RequestProjectHeader } from "./shared";
/**
 * @generated from protobuf message api.FieldView
 */
export interface FieldView {
    /**
     * @generated from protobuf field: string Name = 1 [json_name = "Name"];
     */
    name: string;
    /**
     * @generated from protobuf field: bool IsMetadata = 2 [json_name = "IsMetadata"];
     */
    isMetadata: boolean;
    /**
     * string Type = 3;
     *
     * @generated from protobuf field: string Path = 4 [json_name = "Path"];
     */
    path: string;
    /**
     * @generated from protobuf field: string DisplayPath = 5 [json_name = "DisplayPath"];
     */
    displayPath: string;
    /**
     * @generated from protobuf field: string PathKey = 6 [json_name = "PathKey"];
     */
    pathKey: string;
    /**
     * @generated from protobuf field: string KeyValue = 7 [json_name = "KeyValue"];
     */
    keyValue: string;
    /**
     * The segmentation keys are used to complete the segmentation criteria of the project stock. They also apply to order lines and stock movements
     *
     * @generated from protobuf field: bool IsSegmentationKey = 8 [json_name = "IsSegmentationKey"];
     */
    isSegmentationKey: boolean;
    /**
     * @generated from protobuf field: string EnumValues = 9 [json_name = "EnumValues"];
     */
    enumValues: string;
    /**
     * @generated from protobuf field: repeated string EnumList = 10 [json_name = "EnumList"];
     */
    enumList: string[];
    /**
     * @generated from protobuf field: string ContentType = 11 [json_name = "ContentType"];
     */
    contentType: string;
    /**
     * @generated from protobuf field: repeated string KpiMetricGroups = 12 [json_name = "KpiMetricGroups"];
     */
    kpiMetricGroups: string[];
    /**
     * @generated from protobuf field: repeated string KpiDimensionGroups = 13 [json_name = "KpiDimensionGroups"];
     */
    kpiDimensionGroups: string[];
    /**
     * @generated from protobuf field: repeated string KpiDateGroups = 14 [json_name = "KpiDateGroups"];
     */
    kpiDateGroups: string[];
    /**
     * @generated from protobuf field: string KpiName = 15 [json_name = "KpiName"];
     */
    kpiName: string;
    /**
     * @generated from protobuf field: repeated string QueryableKpiGroups = 16 [json_name = "QueryableKpiGroups"];
     */
    queryableKpiGroups: string[];
    /**
     * @generated from protobuf field: string Entity = 17 [json_name = "Entity"];
     */
    entity: string;
    /**
     * @generated from protobuf field: string EntityPath = 18 [json_name = "EntityPath"];
     */
    entityPath: string;
    /**
     * @generated from protobuf field: string EntityPathKey = 19 [json_name = "EntityPathKey"];
     */
    entityPathKey: string;
}
/**
 * @generated from protobuf message api.GetViewFieldsRequest
 */
export interface GetViewFieldsRequest {
    /**
     * @generated from protobuf field: api.RequestProjectHeader Header = 1 [json_name = "Header"];
     */
    header?: RequestProjectHeader;
    // string Project = 1  
    //    [
    //        (validate.rules).string.min_len = 1
    //    ];

    /**
     * @generated from protobuf field: string Domain = 2 [json_name = "Domain"];
     */
    domain: string;
    /**
     * Entity where the metadata will be created. It can be \"executionflow\", \"handlingunit\", \"item\", \"order\", \"stock\"
     *
     * @generated from protobuf field: string Entity = 3 [json_name = "Entity"];
     */
    entity: string;
    /**
     * Fields that are not used in this entity
     *
     * @generated from protobuf field: repeated string OmmittedList = 4 [json_name = "OmmittedList"];
     */
    ommittedList: string[];
    /**
     * @generated from protobuf field: string StartingPath = 5 [json_name = "StartingPath"];
     */
    startingPath: string;
    /**
     * @generated from protobuf field: bool OnlySegmentationKeys = 6 [json_name = "OnlySegmentationKeys"];
     */
    onlySegmentationKeys: boolean;
    /**
     * @generated from protobuf field: string KpiGroupFilter = 7 [json_name = "KpiGroupFilter"];
     */
    kpiGroupFilter: string;
}
/**
 * @generated from protobuf message api.GetViewFieldsResult
 */
export interface GetViewFieldsResult {
    /**
     * @generated from protobuf field: repeated api.FieldView Fields = 1 [json_name = "Fields"];
     */
    fields: FieldView[];
}
// @generated message type with reflection information, may provide speed optimized methods
class FieldView$Type extends MessageType<FieldView> {
    constructor() {
        super("api.FieldView", [
            { no: 1, name: "Name", kind: "scalar", jsonName: "Name", T: 9 /*ScalarType.STRING*/ },
            { no: 2, name: "IsMetadata", kind: "scalar", jsonName: "IsMetadata", T: 8 /*ScalarType.BOOL*/ },
            { no: 4, name: "Path", kind: "scalar", jsonName: "Path", T: 9 /*ScalarType.STRING*/ },
            { no: 5, name: "DisplayPath", kind: "scalar", jsonName: "DisplayPath", T: 9 /*ScalarType.STRING*/ },
            { no: 6, name: "PathKey", kind: "scalar", jsonName: "PathKey", T: 9 /*ScalarType.STRING*/ },
            { no: 7, name: "KeyValue", kind: "scalar", jsonName: "KeyValue", T: 9 /*ScalarType.STRING*/ },
            { no: 8, name: "IsSegmentationKey", kind: "scalar", jsonName: "IsSegmentationKey", T: 8 /*ScalarType.BOOL*/, options: { "grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field": { description: "The segmentation keys are used to complete the segmentation criteria of the project stock. They also apply to order lines and stock movements" } } },
            { no: 9, name: "EnumValues", kind: "scalar", jsonName: "EnumValues", T: 9 /*ScalarType.STRING*/ },
            { no: 10, name: "EnumList", kind: "scalar", jsonName: "EnumList", repeat: 2 /*RepeatType.UNPACKED*/, T: 9 /*ScalarType.STRING*/ },
            { no: 11, name: "ContentType", kind: "scalar", jsonName: "ContentType", T: 9 /*ScalarType.STRING*/ },
            { no: 12, name: "KpiMetricGroups", kind: "scalar", jsonName: "KpiMetricGroups", repeat: 2 /*RepeatType.UNPACKED*/, T: 9 /*ScalarType.STRING*/ },
            { no: 13, name: "KpiDimensionGroups", kind: "scalar", jsonName: "KpiDimensionGroups", repeat: 2 /*RepeatType.UNPACKED*/, T: 9 /*ScalarType.STRING*/ },
            { no: 14, name: "KpiDateGroups", kind: "scalar", jsonName: "KpiDateGroups", repeat: 2 /*RepeatType.UNPACKED*/, T: 9 /*ScalarType.STRING*/ },
            { no: 15, name: "KpiName", kind: "scalar", jsonName: "KpiName", T: 9 /*ScalarType.STRING*/ },
            { no: 16, name: "QueryableKpiGroups", kind: "scalar", jsonName: "QueryableKpiGroups", repeat: 2 /*RepeatType.UNPACKED*/, T: 9 /*ScalarType.STRING*/ },
            { no: 17, name: "Entity", kind: "scalar", jsonName: "Entity", T: 9 /*ScalarType.STRING*/ },
            { no: 18, name: "EntityPath", kind: "scalar", jsonName: "EntityPath", T: 9 /*ScalarType.STRING*/ },
            { no: 19, name: "EntityPathKey", kind: "scalar", jsonName: "EntityPathKey", T: 9 /*ScalarType.STRING*/ }
        ]);
    }
    create(value?: PartialMessage<FieldView>): FieldView {
        const message = globalThis.Object.create((this.messagePrototype!));
        message.name = "";
        message.isMetadata = false;
        message.path = "";
        message.displayPath = "";
        message.pathKey = "";
        message.keyValue = "";
        message.isSegmentationKey = false;
        message.enumValues = "";
        message.enumList = [];
        message.contentType = "";
        message.kpiMetricGroups = [];
        message.kpiDimensionGroups = [];
        message.kpiDateGroups = [];
        message.kpiName = "";
        message.queryableKpiGroups = [];
        message.entity = "";
        message.entityPath = "";
        message.entityPathKey = "";
        if (value !== undefined)
            reflectionMergePartial<FieldView>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: FieldView): FieldView {
        let message = target ?? this.create(), end = reader.pos + length;
        while (reader.pos < end) {
            let [fieldNo, wireType] = reader.tag();
            switch (fieldNo) {
                case /* string Name = 1 [json_name = "Name"];*/ 1:
                    message.name = reader.string();
                    break;
                case /* bool IsMetadata = 2 [json_name = "IsMetadata"];*/ 2:
                    message.isMetadata = reader.bool();
                    break;
                case /* string Path = 4 [json_name = "Path"];*/ 4:
                    message.path = reader.string();
                    break;
                case /* string DisplayPath = 5 [json_name = "DisplayPath"];*/ 5:
                    message.displayPath = reader.string();
                    break;
                case /* string PathKey = 6 [json_name = "PathKey"];*/ 6:
                    message.pathKey = reader.string();
                    break;
                case /* string KeyValue = 7 [json_name = "KeyValue"];*/ 7:
                    message.keyValue = reader.string();
                    break;
                case /* bool IsSegmentationKey = 8 [json_name = "IsSegmentationKey"];*/ 8:
                    message.isSegmentationKey = reader.bool();
                    break;
                case /* string EnumValues = 9 [json_name = "EnumValues"];*/ 9:
                    message.enumValues = reader.string();
                    break;
                case /* repeated string EnumList = 10 [json_name = "EnumList"];*/ 10:
                    message.enumList.push(reader.string());
                    break;
                case /* string ContentType = 11 [json_name = "ContentType"];*/ 11:
                    message.contentType = reader.string();
                    break;
                case /* repeated string KpiMetricGroups = 12 [json_name = "KpiMetricGroups"];*/ 12:
                    message.kpiMetricGroups.push(reader.string());
                    break;
                case /* repeated string KpiDimensionGroups = 13 [json_name = "KpiDimensionGroups"];*/ 13:
                    message.kpiDimensionGroups.push(reader.string());
                    break;
                case /* repeated string KpiDateGroups = 14 [json_name = "KpiDateGroups"];*/ 14:
                    message.kpiDateGroups.push(reader.string());
                    break;
                case /* string KpiName = 15 [json_name = "KpiName"];*/ 15:
                    message.kpiName = reader.string();
                    break;
                case /* repeated string QueryableKpiGroups = 16 [json_name = "QueryableKpiGroups"];*/ 16:
                    message.queryableKpiGroups.push(reader.string());
                    break;
                case /* string Entity = 17 [json_name = "Entity"];*/ 17:
                    message.entity = reader.string();
                    break;
                case /* string EntityPath = 18 [json_name = "EntityPath"];*/ 18:
                    message.entityPath = reader.string();
                    break;
                case /* string EntityPathKey = 19 [json_name = "EntityPathKey"];*/ 19:
                    message.entityPathKey = 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: FieldView, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
        /* string Name = 1 [json_name = "Name"]; */
        if (message.name !== "")
            writer.tag(1, WireType.LengthDelimited).string(message.name);
        /* bool IsMetadata = 2 [json_name = "IsMetadata"]; */
        if (message.isMetadata !== false)
            writer.tag(2, WireType.Varint).bool(message.isMetadata);
        /* string Path = 4 [json_name = "Path"]; */
        if (message.path !== "")
            writer.tag(4, WireType.LengthDelimited).string(message.path);
        /* string DisplayPath = 5 [json_name = "DisplayPath"]; */
        if (message.displayPath !== "")
            writer.tag(5, WireType.LengthDelimited).string(message.displayPath);
        /* string PathKey = 6 [json_name = "PathKey"]; */
        if (message.pathKey !== "")
            writer.tag(6, WireType.LengthDelimited).string(message.pathKey);
        /* string KeyValue = 7 [json_name = "KeyValue"]; */
        if (message.keyValue !== "")
            writer.tag(7, WireType.LengthDelimited).string(message.keyValue);
        /* bool IsSegmentationKey = 8 [json_name = "IsSegmentationKey"]; */
        if (message.isSegmentationKey !== false)
            writer.tag(8, WireType.Varint).bool(message.isSegmentationKey);
        /* string EnumValues = 9 [json_name = "EnumValues"]; */
        if (message.enumValues !== "")
            writer.tag(9, WireType.LengthDelimited).string(message.enumValues);
        /* repeated string EnumList = 10 [json_name = "EnumList"]; */
        for (let i = 0; i < message.enumList.length; i++)
            writer.tag(10, WireType.LengthDelimited).string(message.enumList[i]);
        /* string ContentType = 11 [json_name = "ContentType"]; */
        if (message.contentType !== "")
            writer.tag(11, WireType.LengthDelimited).string(message.contentType);
        /* repeated string KpiMetricGroups = 12 [json_name = "KpiMetricGroups"]; */
        for (let i = 0; i < message.kpiMetricGroups.length; i++)
            writer.tag(12, WireType.LengthDelimited).string(message.kpiMetricGroups[i]);
        /* repeated string KpiDimensionGroups = 13 [json_name = "KpiDimensionGroups"]; */
        for (let i = 0; i < message.kpiDimensionGroups.length; i++)
            writer.tag(13, WireType.LengthDelimited).string(message.kpiDimensionGroups[i]);
        /* repeated string KpiDateGroups = 14 [json_name = "KpiDateGroups"]; */
        for (let i = 0; i < message.kpiDateGroups.length; i++)
            writer.tag(14, WireType.LengthDelimited).string(message.kpiDateGroups[i]);
        /* string KpiName = 15 [json_name = "KpiName"]; */
        if (message.kpiName !== "")
            writer.tag(15, WireType.LengthDelimited).string(message.kpiName);
        /* repeated string QueryableKpiGroups = 16 [json_name = "QueryableKpiGroups"]; */
        for (let i = 0; i < message.queryableKpiGroups.length; i++)
            writer.tag(16, WireType.LengthDelimited).string(message.queryableKpiGroups[i]);
        /* string Entity = 17 [json_name = "Entity"]; */
        if (message.entity !== "")
            writer.tag(17, WireType.LengthDelimited).string(message.entity);
        /* string EntityPath = 18 [json_name = "EntityPath"]; */
        if (message.entityPath !== "")
            writer.tag(18, WireType.LengthDelimited).string(message.entityPath);
        /* string EntityPathKey = 19 [json_name = "EntityPathKey"]; */
        if (message.entityPathKey !== "")
            writer.tag(19, WireType.LengthDelimited).string(message.entityPathKey);
        let u = options.writeUnknownFields;
        if (u !== false)
            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
        return writer;
    }
}
/**
 * @generated MessageType for protobuf message api.FieldView
 */
export const FieldView = new FieldView$Type();
// @generated message type with reflection information, may provide speed optimized methods
class GetViewFieldsRequest$Type extends MessageType<GetViewFieldsRequest> {
    constructor() {
        super("api.GetViewFieldsRequest", [
            { no: 1, name: "Header", kind: "message", jsonName: "Header", T: () => RequestProjectHeader, options: { "validate.rules": { message: { required: true } } } },
            { no: 2, name: "Domain", kind: "scalar", jsonName: "Domain", T: 9 /*ScalarType.STRING*/, options: { "validate.rules": { string: { in: ["trade", "collab", "core"] } }, "grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field": { default: "trade" } } },
            { no: 3, name: "Entity", kind: "scalar", jsonName: "Entity", T: 9 /*ScalarType.STRING*/, options: { "validate.rules": { string: { minLen: "1" } }, "grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field": { description: "Entity where the metadata will be created. It can be \"executionflow\", \"handlingunit\", \"item\", \"order\", \"stock\"", example: "\"order\"" } } },
            { no: 4, name: "OmmittedList", kind: "scalar", jsonName: "OmmittedList", repeat: 2 /*RepeatType.UNPACKED*/, T: 9 /*ScalarType.STRING*/, options: { "grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field": { description: "Fields that are not used in this entity" } } },
            { no: 5, name: "StartingPath", kind: "scalar", jsonName: "StartingPath", T: 9 /*ScalarType.STRING*/ },
            { no: 6, name: "OnlySegmentationKeys", kind: "scalar", jsonName: "OnlySegmentationKeys", T: 8 /*ScalarType.BOOL*/ },
            { no: 7, name: "KpiGroupFilter", kind: "scalar", jsonName: "KpiGroupFilter", T: 9 /*ScalarType.STRING*/, options: { "grpc.gateway.protoc_gen_openapiv2.options.openapiv2_field": { description: "Only fields matching this kpi group name" } } }
        ], { "grpc.gateway.protoc_gen_openapiv2.options.openapiv2_schema": { jsonSchema: { required: ["Header", "Entity"] } } });
    }
    create(value?: PartialMessage<GetViewFieldsRequest>): GetViewFieldsRequest {
        const message = globalThis.Object.create((this.messagePrototype!));
        message.domain = "";
        message.entity = "";
        message.ommittedList = [];
        message.startingPath = "";
        message.onlySegmentationKeys = false;
        message.kpiGroupFilter = "";
        if (value !== undefined)
            reflectionMergePartial<GetViewFieldsRequest>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: GetViewFieldsRequest): GetViewFieldsRequest {
        let message = target ?? this.create(), end = reader.pos + length;
        while (reader.pos < end) {
            let [fieldNo, wireType] = reader.tag();
            switch (fieldNo) {
                case /* api.RequestProjectHeader Header = 1 [json_name = "Header"];*/ 1:
                    message.header = RequestProjectHeader.internalBinaryRead(reader, reader.uint32(), options, message.header);
                    break;
                case /* string Domain = 2 [json_name = "Domain"];*/ 2:
                    message.domain = reader.string();
                    break;
                case /* string Entity = 3 [json_name = "Entity"];*/ 3:
                    message.entity = reader.string();
                    break;
                case /* repeated string OmmittedList = 4 [json_name = "OmmittedList"];*/ 4:
                    message.ommittedList.push(reader.string());
                    break;
                case /* string StartingPath = 5 [json_name = "StartingPath"];*/ 5:
                    message.startingPath = reader.string();
                    break;
                case /* bool OnlySegmentationKeys = 6 [json_name = "OnlySegmentationKeys"];*/ 6:
                    message.onlySegmentationKeys = reader.bool();
                    break;
                case /* string KpiGroupFilter = 7 [json_name = "KpiGroupFilter"];*/ 7:
                    message.kpiGroupFilter = 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: GetViewFieldsRequest, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
        /* api.RequestProjectHeader Header = 1 [json_name = "Header"]; */
        if (message.header)
            RequestProjectHeader.internalBinaryWrite(message.header, writer.tag(1, WireType.LengthDelimited).fork(), options).join();
        /* string Domain = 2 [json_name = "Domain"]; */
        if (message.domain !== "")
            writer.tag(2, WireType.LengthDelimited).string(message.domain);
        /* string Entity = 3 [json_name = "Entity"]; */
        if (message.entity !== "")
            writer.tag(3, WireType.LengthDelimited).string(message.entity);
        /* repeated string OmmittedList = 4 [json_name = "OmmittedList"]; */
        for (let i = 0; i < message.ommittedList.length; i++)
            writer.tag(4, WireType.LengthDelimited).string(message.ommittedList[i]);
        /* string StartingPath = 5 [json_name = "StartingPath"]; */
        if (message.startingPath !== "")
            writer.tag(5, WireType.LengthDelimited).string(message.startingPath);
        /* bool OnlySegmentationKeys = 6 [json_name = "OnlySegmentationKeys"]; */
        if (message.onlySegmentationKeys !== false)
            writer.tag(6, WireType.Varint).bool(message.onlySegmentationKeys);
        /* string KpiGroupFilter = 7 [json_name = "KpiGroupFilter"]; */
        if (message.kpiGroupFilter !== "")
            writer.tag(7, WireType.LengthDelimited).string(message.kpiGroupFilter);
        let u = options.writeUnknownFields;
        if (u !== false)
            (u == true ? UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
        return writer;
    }
}
/**
 * @generated MessageType for protobuf message api.GetViewFieldsRequest
 */
export const GetViewFieldsRequest = new GetViewFieldsRequest$Type();
// @generated message type with reflection information, may provide speed optimized methods
class GetViewFieldsResult$Type extends MessageType<GetViewFieldsResult> {
    constructor() {
        super("api.GetViewFieldsResult", [
            { no: 1, name: "Fields", kind: "message", jsonName: "Fields", repeat: 1 /*RepeatType.PACKED*/, T: () => FieldView }
        ]);
    }
    create(value?: PartialMessage<GetViewFieldsResult>): GetViewFieldsResult {
        const message = globalThis.Object.create((this.messagePrototype!));
        message.fields = [];
        if (value !== undefined)
            reflectionMergePartial<GetViewFieldsResult>(this, message, value);
        return message;
    }
    internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: GetViewFieldsResult): GetViewFieldsResult {
        let message = target ?? this.create(), end = reader.pos + length;
        while (reader.pos < end) {
            let [fieldNo, wireType] = reader.tag();
            switch (fieldNo) {
                case /* repeated api.FieldView Fields = 1 [json_name = "Fields"];*/ 1:
                    message.fields.push(FieldView.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: GetViewFieldsResult, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter {
        /* repeated api.FieldView Fields = 1 [json_name = "Fields"]; */
        for (let i = 0; i < message.fields.length; i++)
            FieldView.internalBinaryWrite(message.fields[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.GetViewFieldsResult
 */
export const GetViewFieldsResult = new GetViewFieldsResult$Type();
/**
 * @generated ServiceType for protobuf service api.ViewService
 */
export const ViewService = new ServiceType("api.ViewService", [
    { name: "GetViewFields", options: { "grpc.gateway.protoc_gen_openapiv2.options.openapiv2_operation": { tags: ["Project View"], description: "Get view fields" }, "api.rscType": "Project", "api.roles": "Platform.Project-View", "google.api.method_visibility": { restriction: "SDK" } }, I: GetViewFieldsRequest, O: GetViewFieldsResult }
], { "api.k8sService": "project-model-server" });
