@514labs/moose-proto 0.6.297-ci-20-gec2306d8 → 0.6.297-ci-5-g194c6fe0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -927,6 +927,12 @@ interface Table {
927
927
  * @generated from protobuf field: optional string table_settings_hash = 20
928
928
  */
929
929
  tableSettingsHash?: string;
930
+ /**
931
+ * Optional ClickHouse projections for query optimization
932
+ *
933
+ * @generated from protobuf field: repeated moose.proto.TableProjection projections = 21
934
+ */
935
+ projections: TableProjection[];
930
936
  }
931
937
  /**
932
938
  * @generated MessageType for protobuf message moose.proto.Table
@@ -1028,6 +1034,110 @@ interface TableIndex {
1028
1034
  * @generated MessageType for protobuf message moose.proto.TableIndex
1029
1035
  */
1030
1036
  declare const TableIndex: TableIndex$Type;
1037
+ declare class ProjectionClause$Type extends MessageType<ProjectionClause> {
1038
+ constructor();
1039
+ create(value?: PartialMessage<ProjectionClause>): ProjectionClause;
1040
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ProjectionClause): ProjectionClause;
1041
+ internalBinaryWrite(message: ProjectionClause, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
1042
+ }
1043
+ /**
1044
+ * Projection clause - either explicit fields or SQL expression
1045
+ *
1046
+ * @generated from protobuf message moose.proto.ProjectionClause
1047
+ */
1048
+ interface ProjectionClause {
1049
+ /**
1050
+ * @generated from protobuf oneof: clause
1051
+ */
1052
+ clause: {
1053
+ oneofKind: "fields";
1054
+ /**
1055
+ * List of field names (e.g., ["user_id", "timestamp"])
1056
+ *
1057
+ * @generated from protobuf field: moose.proto.ProjectionFields fields = 1
1058
+ */
1059
+ fields: ProjectionFields;
1060
+ } | {
1061
+ oneofKind: "expression";
1062
+ /**
1063
+ * SQL expression (e.g., "toStartOfHour(timestamp) as hour, count() as cnt")
1064
+ *
1065
+ * @generated from protobuf field: string expression = 2
1066
+ */
1067
+ expression: string;
1068
+ } | {
1069
+ oneofKind: undefined;
1070
+ };
1071
+ }
1072
+ /**
1073
+ * @generated MessageType for protobuf message moose.proto.ProjectionClause
1074
+ */
1075
+ declare const ProjectionClause: ProjectionClause$Type;
1076
+ declare class ProjectionFields$Type extends MessageType<ProjectionFields> {
1077
+ constructor();
1078
+ create(value?: PartialMessage<ProjectionFields>): ProjectionFields;
1079
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ProjectionFields): ProjectionFields;
1080
+ internalBinaryWrite(message: ProjectionFields, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
1081
+ }
1082
+ /**
1083
+ * Wrapper for repeated field names in projections
1084
+ *
1085
+ * @generated from protobuf message moose.proto.ProjectionFields
1086
+ */
1087
+ interface ProjectionFields {
1088
+ /**
1089
+ * Field names to include in the projection
1090
+ *
1091
+ * @generated from protobuf field: repeated string field = 1
1092
+ */
1093
+ field: string[];
1094
+ }
1095
+ /**
1096
+ * @generated MessageType for protobuf message moose.proto.ProjectionFields
1097
+ */
1098
+ declare const ProjectionFields: ProjectionFields$Type;
1099
+ declare class TableProjection$Type extends MessageType<TableProjection> {
1100
+ constructor();
1101
+ create(value?: PartialMessage<TableProjection>): TableProjection;
1102
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: TableProjection): TableProjection;
1103
+ internalBinaryWrite(message: TableProjection, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
1104
+ }
1105
+ /**
1106
+ * ClickHouse projection for query optimization
1107
+ * Projections duplicate data with different sort orders or pre-computed aggregations
1108
+ *
1109
+ * @generated from protobuf message moose.proto.TableProjection
1110
+ */
1111
+ interface TableProjection {
1112
+ /**
1113
+ * Unique name for the projection
1114
+ *
1115
+ * @generated from protobuf field: string name = 1
1116
+ */
1117
+ name: string;
1118
+ /**
1119
+ * Columns or expression to project (required)
1120
+ *
1121
+ * @generated from protobuf field: moose.proto.ProjectionClause select = 2
1122
+ */
1123
+ select?: ProjectionClause;
1124
+ /**
1125
+ * Optional ordering for non-aggregate projections (mutually exclusive with group_by)
1126
+ *
1127
+ * @generated from protobuf field: moose.proto.ProjectionClause order_by = 3
1128
+ */
1129
+ orderBy?: ProjectionClause;
1130
+ /**
1131
+ * Optional grouping for aggregate projections (mutually exclusive with order_by)
1132
+ *
1133
+ * @generated from protobuf field: optional moose.proto.ProjectionClause group_by = 4
1134
+ */
1135
+ groupBy?: ProjectionClause;
1136
+ }
1137
+ /**
1138
+ * @generated MessageType for protobuf message moose.proto.TableProjection
1139
+ */
1140
+ declare const TableProjection: TableProjection$Type;
1031
1141
  declare class View$Type extends MessageType<View> {
1032
1142
  constructor();
1033
1143
  create(value?: PartialMessage<View>): View;
@@ -1880,4 +1990,4 @@ interface WebAppMetadata {
1880
1990
  */
1881
1991
  declare const WebAppMetadata: WebAppMetadata$Type;
1882
1992
 
1883
- export { ApiEndpoint, Column, ColumnType, ConsumptionQueryParam, DataEnum, DateType, Decimal, EgressDetails, EndpointIngestionFormat, EnumMember, EnumValue, FloatType, FunctionProcess, InfrastructureMap, InfrastructureSignature, IngressDetails, InitialDataLoad, IntType, Json, JsonTypedPath, LifeCycle, Map, Metadata, Method, Nested, OrchestrationWorker, OrderBy, OrderByFields, PrimitiveSignature, PrimitiveTypes, SchemaRegistry, SchemaRegistry_Encoding, SimpleColumnType, SourceLocation, SqlResource, SubjectVersion, Table, TableAlias, TableIndex, Topic, TopicToTableSyncProcess, TopicToTopicSyncProcess, Tuple, View, WebApp, WebAppMetadata };
1993
+ export { ApiEndpoint, Column, ColumnType, ConsumptionQueryParam, DataEnum, DateType, Decimal, EgressDetails, EndpointIngestionFormat, EnumMember, EnumValue, FloatType, FunctionProcess, InfrastructureMap, InfrastructureSignature, IngressDetails, InitialDataLoad, IntType, Json, JsonTypedPath, LifeCycle, Map, Metadata, Method, Nested, OrchestrationWorker, OrderBy, OrderByFields, PrimitiveSignature, PrimitiveTypes, ProjectionClause, ProjectionFields, SchemaRegistry, SchemaRegistry_Encoding, SimpleColumnType, SourceLocation, SqlResource, SubjectVersion, Table, TableAlias, TableIndex, TableProjection, Topic, TopicToTableSyncProcess, TopicToTopicSyncProcess, Tuple, View, WebApp, WebAppMetadata };
@@ -927,6 +927,12 @@ interface Table {
927
927
  * @generated from protobuf field: optional string table_settings_hash = 20
928
928
  */
929
929
  tableSettingsHash?: string;
930
+ /**
931
+ * Optional ClickHouse projections for query optimization
932
+ *
933
+ * @generated from protobuf field: repeated moose.proto.TableProjection projections = 21
934
+ */
935
+ projections: TableProjection[];
930
936
  }
931
937
  /**
932
938
  * @generated MessageType for protobuf message moose.proto.Table
@@ -1028,6 +1034,110 @@ interface TableIndex {
1028
1034
  * @generated MessageType for protobuf message moose.proto.TableIndex
1029
1035
  */
1030
1036
  declare const TableIndex: TableIndex$Type;
1037
+ declare class ProjectionClause$Type extends MessageType<ProjectionClause> {
1038
+ constructor();
1039
+ create(value?: PartialMessage<ProjectionClause>): ProjectionClause;
1040
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ProjectionClause): ProjectionClause;
1041
+ internalBinaryWrite(message: ProjectionClause, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
1042
+ }
1043
+ /**
1044
+ * Projection clause - either explicit fields or SQL expression
1045
+ *
1046
+ * @generated from protobuf message moose.proto.ProjectionClause
1047
+ */
1048
+ interface ProjectionClause {
1049
+ /**
1050
+ * @generated from protobuf oneof: clause
1051
+ */
1052
+ clause: {
1053
+ oneofKind: "fields";
1054
+ /**
1055
+ * List of field names (e.g., ["user_id", "timestamp"])
1056
+ *
1057
+ * @generated from protobuf field: moose.proto.ProjectionFields fields = 1
1058
+ */
1059
+ fields: ProjectionFields;
1060
+ } | {
1061
+ oneofKind: "expression";
1062
+ /**
1063
+ * SQL expression (e.g., "toStartOfHour(timestamp) as hour, count() as cnt")
1064
+ *
1065
+ * @generated from protobuf field: string expression = 2
1066
+ */
1067
+ expression: string;
1068
+ } | {
1069
+ oneofKind: undefined;
1070
+ };
1071
+ }
1072
+ /**
1073
+ * @generated MessageType for protobuf message moose.proto.ProjectionClause
1074
+ */
1075
+ declare const ProjectionClause: ProjectionClause$Type;
1076
+ declare class ProjectionFields$Type extends MessageType<ProjectionFields> {
1077
+ constructor();
1078
+ create(value?: PartialMessage<ProjectionFields>): ProjectionFields;
1079
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: ProjectionFields): ProjectionFields;
1080
+ internalBinaryWrite(message: ProjectionFields, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
1081
+ }
1082
+ /**
1083
+ * Wrapper for repeated field names in projections
1084
+ *
1085
+ * @generated from protobuf message moose.proto.ProjectionFields
1086
+ */
1087
+ interface ProjectionFields {
1088
+ /**
1089
+ * Field names to include in the projection
1090
+ *
1091
+ * @generated from protobuf field: repeated string field = 1
1092
+ */
1093
+ field: string[];
1094
+ }
1095
+ /**
1096
+ * @generated MessageType for protobuf message moose.proto.ProjectionFields
1097
+ */
1098
+ declare const ProjectionFields: ProjectionFields$Type;
1099
+ declare class TableProjection$Type extends MessageType<TableProjection> {
1100
+ constructor();
1101
+ create(value?: PartialMessage<TableProjection>): TableProjection;
1102
+ internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: TableProjection): TableProjection;
1103
+ internalBinaryWrite(message: TableProjection, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter;
1104
+ }
1105
+ /**
1106
+ * ClickHouse projection for query optimization
1107
+ * Projections duplicate data with different sort orders or pre-computed aggregations
1108
+ *
1109
+ * @generated from protobuf message moose.proto.TableProjection
1110
+ */
1111
+ interface TableProjection {
1112
+ /**
1113
+ * Unique name for the projection
1114
+ *
1115
+ * @generated from protobuf field: string name = 1
1116
+ */
1117
+ name: string;
1118
+ /**
1119
+ * Columns or expression to project (required)
1120
+ *
1121
+ * @generated from protobuf field: moose.proto.ProjectionClause select = 2
1122
+ */
1123
+ select?: ProjectionClause;
1124
+ /**
1125
+ * Optional ordering for non-aggregate projections (mutually exclusive with group_by)
1126
+ *
1127
+ * @generated from protobuf field: moose.proto.ProjectionClause order_by = 3
1128
+ */
1129
+ orderBy?: ProjectionClause;
1130
+ /**
1131
+ * Optional grouping for aggregate projections (mutually exclusive with order_by)
1132
+ *
1133
+ * @generated from protobuf field: optional moose.proto.ProjectionClause group_by = 4
1134
+ */
1135
+ groupBy?: ProjectionClause;
1136
+ }
1137
+ /**
1138
+ * @generated MessageType for protobuf message moose.proto.TableProjection
1139
+ */
1140
+ declare const TableProjection: TableProjection$Type;
1031
1141
  declare class View$Type extends MessageType<View> {
1032
1142
  constructor();
1033
1143
  create(value?: PartialMessage<View>): View;
@@ -1880,4 +1990,4 @@ interface WebAppMetadata {
1880
1990
  */
1881
1991
  declare const WebAppMetadata: WebAppMetadata$Type;
1882
1992
 
1883
- export { ApiEndpoint, Column, ColumnType, ConsumptionQueryParam, DataEnum, DateType, Decimal, EgressDetails, EndpointIngestionFormat, EnumMember, EnumValue, FloatType, FunctionProcess, InfrastructureMap, InfrastructureSignature, IngressDetails, InitialDataLoad, IntType, Json, JsonTypedPath, LifeCycle, Map, Metadata, Method, Nested, OrchestrationWorker, OrderBy, OrderByFields, PrimitiveSignature, PrimitiveTypes, SchemaRegistry, SchemaRegistry_Encoding, SimpleColumnType, SourceLocation, SqlResource, SubjectVersion, Table, TableAlias, TableIndex, Topic, TopicToTableSyncProcess, TopicToTopicSyncProcess, Tuple, View, WebApp, WebAppMetadata };
1993
+ export { ApiEndpoint, Column, ColumnType, ConsumptionQueryParam, DataEnum, DateType, Decimal, EgressDetails, EndpointIngestionFormat, EnumMember, EnumValue, FloatType, FunctionProcess, InfrastructureMap, InfrastructureSignature, IngressDetails, InitialDataLoad, IntType, Json, JsonTypedPath, LifeCycle, Map, Metadata, Method, Nested, OrchestrationWorker, OrderBy, OrderByFields, PrimitiveSignature, PrimitiveTypes, ProjectionClause, ProjectionFields, SchemaRegistry, SchemaRegistry_Encoding, SimpleColumnType, SourceLocation, SqlResource, SubjectVersion, Table, TableAlias, TableIndex, TableProjection, Topic, TopicToTableSyncProcess, TopicToTopicSyncProcess, Tuple, View, WebApp, WebAppMetadata };
@@ -50,6 +50,8 @@ __export(infrastructure_map_exports, {
50
50
  OrderByFields: () => OrderByFields,
51
51
  PrimitiveSignature: () => PrimitiveSignature,
52
52
  PrimitiveTypes: () => PrimitiveTypes,
53
+ ProjectionClause: () => ProjectionClause,
54
+ ProjectionFields: () => ProjectionFields,
53
55
  SchemaRegistry: () => SchemaRegistry,
54
56
  SchemaRegistry_Encoding: () => SchemaRegistry_Encoding,
55
57
  SimpleColumnType: () => SimpleColumnType,
@@ -59,6 +61,7 @@ __export(infrastructure_map_exports, {
59
61
  Table: () => Table,
60
62
  TableAlias: () => TableAlias,
61
63
  TableIndex: () => TableIndex,
64
+ TableProjection: () => TableProjection,
62
65
  Topic: () => Topic,
63
66
  TopicToTableSyncProcess: () => TopicToTableSyncProcess,
64
67
  TopicToTopicSyncProcess: () => TopicToTopicSyncProcess,
@@ -2033,7 +2036,8 @@ var Table$Type = class extends import_runtime16.MessageType {
2033
2036
  opt: true,
2034
2037
  T: 9
2035
2038
  /*ScalarType.STRING*/
2036
- }
2039
+ },
2040
+ { no: 21, name: "projections", kind: "message", repeat: 2, T: () => TableProjection }
2037
2041
  ]);
2038
2042
  }
2039
2043
  create(value) {
@@ -2045,6 +2049,7 @@ var Table$Type = class extends import_runtime16.MessageType {
2045
2049
  message.lifeCycle = 0;
2046
2050
  message.tableSettings = {};
2047
2051
  message.indexes = [];
2052
+ message.projections = [];
2048
2053
  if (value !== void 0)
2049
2054
  (0, import_runtime15.reflectionMergePartial)(this, message, value);
2050
2055
  return message;
@@ -2134,6 +2139,10 @@ var Table$Type = class extends import_runtime16.MessageType {
2134
2139
  20:
2135
2140
  message.tableSettingsHash = reader.string();
2136
2141
  break;
2142
+ case /* repeated moose.proto.TableProjection projections */
2143
+ 21:
2144
+ message.projections.push(TableProjection.internalBinaryRead(reader, reader.uint32(), options));
2145
+ break;
2137
2146
  default:
2138
2147
  let u = options.readUnknownField;
2139
2148
  if (u === "throw")
@@ -2203,6 +2212,8 @@ var Table$Type = class extends import_runtime16.MessageType {
2203
2212
  writer.tag(19, import_runtime13.WireType.LengthDelimited).string(message.primaryKeyExpression);
2204
2213
  if (message.tableSettingsHash !== void 0)
2205
2214
  writer.tag(20, import_runtime13.WireType.LengthDelimited).string(message.tableSettingsHash);
2215
+ for (let i = 0; i < message.projections.length; i++)
2216
+ TableProjection.internalBinaryWrite(message.projections[i], writer.tag(21, import_runtime13.WireType.LengthDelimited).fork(), options).join();
2206
2217
  let u = options.writeUnknownFields;
2207
2218
  if (u !== false)
2208
2219
  (u == true ? import_runtime14.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
@@ -2430,6 +2441,189 @@ var TableIndex$Type = class extends import_runtime16.MessageType {
2430
2441
  }
2431
2442
  };
2432
2443
  var TableIndex = new TableIndex$Type();
2444
+ var ProjectionClause$Type = class extends import_runtime16.MessageType {
2445
+ constructor() {
2446
+ super("moose.proto.ProjectionClause", [
2447
+ { no: 1, name: "fields", kind: "message", oneof: "clause", T: () => ProjectionFields },
2448
+ {
2449
+ no: 2,
2450
+ name: "expression",
2451
+ kind: "scalar",
2452
+ oneof: "clause",
2453
+ T: 9
2454
+ /*ScalarType.STRING*/
2455
+ }
2456
+ ]);
2457
+ }
2458
+ create(value) {
2459
+ const message = globalThis.Object.create(this.messagePrototype);
2460
+ message.clause = { oneofKind: void 0 };
2461
+ if (value !== void 0)
2462
+ (0, import_runtime15.reflectionMergePartial)(this, message, value);
2463
+ return message;
2464
+ }
2465
+ internalBinaryRead(reader, length, options, target) {
2466
+ let message = target ?? this.create(), end = reader.pos + length;
2467
+ while (reader.pos < end) {
2468
+ let [fieldNo, wireType] = reader.tag();
2469
+ switch (fieldNo) {
2470
+ case /* moose.proto.ProjectionFields fields */
2471
+ 1:
2472
+ message.clause = {
2473
+ oneofKind: "fields",
2474
+ fields: ProjectionFields.internalBinaryRead(reader, reader.uint32(), options, message.clause.fields)
2475
+ };
2476
+ break;
2477
+ case /* string expression */
2478
+ 2:
2479
+ message.clause = {
2480
+ oneofKind: "expression",
2481
+ expression: reader.string()
2482
+ };
2483
+ break;
2484
+ default:
2485
+ let u = options.readUnknownField;
2486
+ if (u === "throw")
2487
+ throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
2488
+ let d = reader.skip(wireType);
2489
+ if (u !== false)
2490
+ (u === true ? import_runtime14.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
2491
+ }
2492
+ }
2493
+ return message;
2494
+ }
2495
+ internalBinaryWrite(message, writer, options) {
2496
+ if (message.clause.oneofKind === "fields")
2497
+ ProjectionFields.internalBinaryWrite(message.clause.fields, writer.tag(1, import_runtime13.WireType.LengthDelimited).fork(), options).join();
2498
+ if (message.clause.oneofKind === "expression")
2499
+ writer.tag(2, import_runtime13.WireType.LengthDelimited).string(message.clause.expression);
2500
+ let u = options.writeUnknownFields;
2501
+ if (u !== false)
2502
+ (u == true ? import_runtime14.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
2503
+ return writer;
2504
+ }
2505
+ };
2506
+ var ProjectionClause = new ProjectionClause$Type();
2507
+ var ProjectionFields$Type = class extends import_runtime16.MessageType {
2508
+ constructor() {
2509
+ super("moose.proto.ProjectionFields", [
2510
+ {
2511
+ no: 1,
2512
+ name: "field",
2513
+ kind: "scalar",
2514
+ repeat: 2,
2515
+ T: 9
2516
+ /*ScalarType.STRING*/
2517
+ }
2518
+ ]);
2519
+ }
2520
+ create(value) {
2521
+ const message = globalThis.Object.create(this.messagePrototype);
2522
+ message.field = [];
2523
+ if (value !== void 0)
2524
+ (0, import_runtime15.reflectionMergePartial)(this, message, value);
2525
+ return message;
2526
+ }
2527
+ internalBinaryRead(reader, length, options, target) {
2528
+ let message = target ?? this.create(), end = reader.pos + length;
2529
+ while (reader.pos < end) {
2530
+ let [fieldNo, wireType] = reader.tag();
2531
+ switch (fieldNo) {
2532
+ case /* repeated string field */
2533
+ 1:
2534
+ message.field.push(reader.string());
2535
+ break;
2536
+ default:
2537
+ let u = options.readUnknownField;
2538
+ if (u === "throw")
2539
+ throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
2540
+ let d = reader.skip(wireType);
2541
+ if (u !== false)
2542
+ (u === true ? import_runtime14.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
2543
+ }
2544
+ }
2545
+ return message;
2546
+ }
2547
+ internalBinaryWrite(message, writer, options) {
2548
+ for (let i = 0; i < message.field.length; i++)
2549
+ writer.tag(1, import_runtime13.WireType.LengthDelimited).string(message.field[i]);
2550
+ let u = options.writeUnknownFields;
2551
+ if (u !== false)
2552
+ (u == true ? import_runtime14.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
2553
+ return writer;
2554
+ }
2555
+ };
2556
+ var ProjectionFields = new ProjectionFields$Type();
2557
+ var TableProjection$Type = class extends import_runtime16.MessageType {
2558
+ constructor() {
2559
+ super("moose.proto.TableProjection", [
2560
+ {
2561
+ no: 1,
2562
+ name: "name",
2563
+ kind: "scalar",
2564
+ T: 9
2565
+ /*ScalarType.STRING*/
2566
+ },
2567
+ { no: 2, name: "select", kind: "message", T: () => ProjectionClause },
2568
+ { no: 3, name: "order_by", kind: "message", T: () => ProjectionClause },
2569
+ { no: 4, name: "group_by", kind: "message", T: () => ProjectionClause }
2570
+ ]);
2571
+ }
2572
+ create(value) {
2573
+ const message = globalThis.Object.create(this.messagePrototype);
2574
+ message.name = "";
2575
+ if (value !== void 0)
2576
+ (0, import_runtime15.reflectionMergePartial)(this, message, value);
2577
+ return message;
2578
+ }
2579
+ internalBinaryRead(reader, length, options, target) {
2580
+ let message = target ?? this.create(), end = reader.pos + length;
2581
+ while (reader.pos < end) {
2582
+ let [fieldNo, wireType] = reader.tag();
2583
+ switch (fieldNo) {
2584
+ case /* string name */
2585
+ 1:
2586
+ message.name = reader.string();
2587
+ break;
2588
+ case /* moose.proto.ProjectionClause select */
2589
+ 2:
2590
+ message.select = ProjectionClause.internalBinaryRead(reader, reader.uint32(), options, message.select);
2591
+ break;
2592
+ case /* moose.proto.ProjectionClause order_by */
2593
+ 3:
2594
+ message.orderBy = ProjectionClause.internalBinaryRead(reader, reader.uint32(), options, message.orderBy);
2595
+ break;
2596
+ case /* optional moose.proto.ProjectionClause group_by */
2597
+ 4:
2598
+ message.groupBy = ProjectionClause.internalBinaryRead(reader, reader.uint32(), options, message.groupBy);
2599
+ break;
2600
+ default:
2601
+ let u = options.readUnknownField;
2602
+ if (u === "throw")
2603
+ throw new globalThis.Error(`Unknown field ${fieldNo} (wire type ${wireType}) for ${this.typeName}`);
2604
+ let d = reader.skip(wireType);
2605
+ if (u !== false)
2606
+ (u === true ? import_runtime14.UnknownFieldHandler.onRead : u)(this.typeName, message, fieldNo, wireType, d);
2607
+ }
2608
+ }
2609
+ return message;
2610
+ }
2611
+ internalBinaryWrite(message, writer, options) {
2612
+ if (message.name !== "")
2613
+ writer.tag(1, import_runtime13.WireType.LengthDelimited).string(message.name);
2614
+ if (message.select)
2615
+ ProjectionClause.internalBinaryWrite(message.select, writer.tag(2, import_runtime13.WireType.LengthDelimited).fork(), options).join();
2616
+ if (message.orderBy)
2617
+ ProjectionClause.internalBinaryWrite(message.orderBy, writer.tag(3, import_runtime13.WireType.LengthDelimited).fork(), options).join();
2618
+ if (message.groupBy)
2619
+ ProjectionClause.internalBinaryWrite(message.groupBy, writer.tag(4, import_runtime13.WireType.LengthDelimited).fork(), options).join();
2620
+ let u = options.writeUnknownFields;
2621
+ if (u !== false)
2622
+ (u == true ? import_runtime14.UnknownFieldHandler.onWrite : u)(this.typeName, message, writer);
2623
+ return writer;
2624
+ }
2625
+ };
2626
+ var TableProjection = new TableProjection$Type();
2433
2627
  var View$Type = class extends import_runtime16.MessageType {
2434
2628
  constructor() {
2435
2629
  super("moose.proto.View", [
@@ -4502,6 +4696,8 @@ var WebAppMetadata = new WebAppMetadata$Type();
4502
4696
  OrderByFields,
4503
4697
  PrimitiveSignature,
4504
4698
  PrimitiveTypes,
4699
+ ProjectionClause,
4700
+ ProjectionFields,
4505
4701
  SchemaRegistry,
4506
4702
  SchemaRegistry_Encoding,
4507
4703
  SimpleColumnType,
@@ -4511,6 +4707,7 @@ var WebAppMetadata = new WebAppMetadata$Type();
4511
4707
  Table,
4512
4708
  TableAlias,
4513
4709
  TableIndex,
4710
+ TableProjection,
4514
4711
  Topic,
4515
4712
  TopicToTableSyncProcess,
4516
4713
  TopicToTopicSyncProcess,