@miradorlabs/web-grpc 3.13.0 → 3.15.0

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.
@@ -25,23 +25,24 @@ import {
25
25
  export const protobufPackage = "gateway.web.v1";
26
26
 
27
27
  /**
28
- * SessionSort ranks the conversation catalog (RECENCY = max last activity; the rest
29
- * are summed conversation totals).
28
+ * SessionSort ranks the conversation catalog, descending. Unspecified is RECENCY. RECENCY is the last activity;
29
+ * the rest are summed conversation totals. source_system, then session_id, breaks ties.
30
30
  */
31
31
  export enum SessionSort {
32
- SESSION_SORT_RECENCY = 0,
32
+ SESSION_SORT_UNSPECIFIED = 0,
33
33
  SESSION_SORT_COST = 1,
34
34
  SESSION_SORT_TOKENS = 2,
35
35
  SESSION_SORT_TURNS = 3,
36
36
  SESSION_SORT_TOOLS = 4,
37
+ SESSION_SORT_RECENCY = 5,
37
38
  UNRECOGNIZED = -1,
38
39
  }
39
40
 
40
41
  export function sessionSortFromJSON(object: any): SessionSort {
41
42
  switch (object) {
42
43
  case 0:
43
- case "SESSION_SORT_RECENCY":
44
- return SessionSort.SESSION_SORT_RECENCY;
44
+ case "SESSION_SORT_UNSPECIFIED":
45
+ return SessionSort.SESSION_SORT_UNSPECIFIED;
45
46
  case 1:
46
47
  case "SESSION_SORT_COST":
47
48
  return SessionSort.SESSION_SORT_COST;
@@ -54,6 +55,9 @@ export function sessionSortFromJSON(object: any): SessionSort {
54
55
  case 4:
55
56
  case "SESSION_SORT_TOOLS":
56
57
  return SessionSort.SESSION_SORT_TOOLS;
58
+ case 5:
59
+ case "SESSION_SORT_RECENCY":
60
+ return SessionSort.SESSION_SORT_RECENCY;
57
61
  case -1:
58
62
  case "UNRECOGNIZED":
59
63
  default:
@@ -63,8 +67,8 @@ export function sessionSortFromJSON(object: any): SessionSort {
63
67
 
64
68
  export function sessionSortToJSON(object: SessionSort): string {
65
69
  switch (object) {
66
- case SessionSort.SESSION_SORT_RECENCY:
67
- return "SESSION_SORT_RECENCY";
70
+ case SessionSort.SESSION_SORT_UNSPECIFIED:
71
+ return "SESSION_SORT_UNSPECIFIED";
68
72
  case SessionSort.SESSION_SORT_COST:
69
73
  return "SESSION_SORT_COST";
70
74
  case SessionSort.SESSION_SORT_TOKENS:
@@ -73,6 +77,8 @@ export function sessionSortToJSON(object: SessionSort): string {
73
77
  return "SESSION_SORT_TURNS";
74
78
  case SessionSort.SESSION_SORT_TOOLS:
75
79
  return "SESSION_SORT_TOOLS";
80
+ case SessionSort.SESSION_SORT_RECENCY:
81
+ return "SESSION_SORT_RECENCY";
76
82
  case SessionSort.UNRECOGNIZED:
77
83
  default:
78
84
  return "UNRECOGNIZED";
@@ -778,37 +784,74 @@ export function aIEntitlementRoleToJSON(object: AIEntitlementRole): string {
778
784
  export interface ListSessionsRequest {
779
785
  organizationId: string;
780
786
  projectId: string;
781
- /**
782
- * Structured filter, built directly by the frontend (AIP-160 is a REST
783
- * api-gateway concern and never reaches this proto).
784
- */
787
+ /** Built directly by the frontend (AIP-160 is a REST api-gateway concern and never reaches this proto). */
785
788
  filter:
786
- | AISessionFilter
789
+ | SessionFilter
787
790
  | undefined;
791
+ /** Ranking; unspecified is SESSION_SORT_RECENCY. */
792
+ sort: SessionSort;
788
793
  /** 1-indexed page; server default when 0. */
789
794
  page: number;
790
795
  /** 1..1000; server default when 0. */
791
796
  perPage: number;
792
- /** Ranking; SESSION_SORT_RECENCY when unset. */
793
- sort: SessionSort;
794
797
  }
795
798
 
796
799
  /**
797
- * AISessionFilter selects conversations. Non-empty fields are ANDed; within a
798
- * repeated field the values are ORed (any-of). source_system matches by equality;
799
- * user_id / api_key_id / model / provider / effort match the whole conversation's folded sets.
800
- * active_after selects conversations active at or after the instant (the period selector).
801
- * model / provider / effort take stored names (expand a display name through ReferenceGatewayService);
802
- * "" in effort matches calls that reported no effort.
800
+ * SessionFilter narrows ListSessions. Fields AND; a repeated field matches any of its values; an unset or
801
+ * empty field does not filter. search, search_principals and search_stored_names are one search: a session
802
+ * matches it when any of them does. It takes ids and stored names, never display names: the caller resolves
803
+ * those (principal labels, ReferenceGatewayService display names). clients, principals, search_principals and
804
+ * search_stored_names hold at most 500 entries each.
805
+ */
806
+ export interface SessionFilter {
807
+ /** Exact source systems. */
808
+ sourceSystems: string[];
809
+ /** A user id or api key id on any of the conversation's events. */
810
+ userIds: string[];
811
+ apiKeyIds: string[];
812
+ /**
813
+ * Stored model, provider and effort names on any of the conversation's calls; "" in efforts matches a call
814
+ * that reported no effort.
815
+ */
816
+ models: string[];
817
+ providers: string[];
818
+ /** Conversations active at or after this instant (the period selector). */
819
+ activeAfter: Date | undefined;
820
+ efforts: string[];
821
+ /** The conversation's client apps. */
822
+ clients: string[];
823
+ /**
824
+ * The conversation's actor (its user id, else its api key id, as the summary shows it). A user matches its
825
+ * user id, an api key only a conversation with no user id, an empty id one with neither; each on its source
826
+ * system when one is given.
827
+ */
828
+ principals: DailyActivityPrincipal[];
829
+ /**
830
+ * Case-insensitive substring of the session id, provider session id, title, source system, actor user id
831
+ * and api key id, or any stored model, provider, effort, client, client version or repository.
832
+ */
833
+ search: string;
834
+ /** Principals whose label the caller matched to the search text, matched by principals' rule. */
835
+ searchPrincipals: DailyActivityPrincipal[];
836
+ /** Stored model, provider or effort names whose display name the caller matched to the search text. */
837
+ searchStoredNames: string[];
838
+ }
839
+
840
+ /**
841
+ * AISessionFilter narrows the model-call aggregates (StreamTokenActivitySummary, StreamBurnRate,
842
+ * ListResourceRankings) by the conversation's attributes. Fields AND; a repeated field matches any of its
843
+ * values; an unset or empty field does not filter. source_systems match by equality; user_ids /
844
+ * api_key_ids / models / providers / efforts match the whole conversation's folded sets. models /
845
+ * providers / efforts take stored names (expand a display name through ReferenceGatewayService); "" in
846
+ * efforts matches calls that reported no effort. The request's time window is the range.
803
847
  */
804
848
  export interface AISessionFilter {
805
- sourceSystem: string[];
806
- userId: string[];
807
- apiKeyId: string[];
808
- model: string[];
809
- provider: string[];
810
- activeAfter?: Date | undefined;
811
- effort: string[];
849
+ sourceSystems: string[];
850
+ userIds: string[];
851
+ apiKeyIds: string[];
852
+ models: string[];
853
+ providers: string[];
854
+ efforts: string[];
812
855
  }
813
856
 
814
857
  export interface ListSessionsResponse {
@@ -817,14 +860,16 @@ export interface ListSessionsResponse {
817
860
  pagination: SessionPagination | undefined;
818
861
  }
819
862
 
820
- /**
821
- * SessionPagination describes the returned page; total / total_pages are best-effort
822
- * (a second count query), weakly consistent with the page.
823
- */
863
+ /** SessionPagination describes the returned page. */
824
864
  export interface SessionPagination {
825
865
  page: number;
826
866
  perPage: number;
827
- total: number;
867
+ /**
868
+ * The conversations matching the filter. A short non-empty (or first) page is the tail and counts itself; a
869
+ * full page, or an empty one past the first, runs a second count query, weakly consistent with the page
870
+ * under concurrent writes. total_pages follows from it.
871
+ */
872
+ totalCount: number;
828
873
  totalPages: number;
829
874
  }
830
875
 
@@ -885,9 +930,9 @@ export interface AISessionSummary {
885
930
  export interface StreamSessionsRequest {
886
931
  organizationId: string;
887
932
  projectId: string;
888
- /** Same structured filter as ListSessions. */
933
+ /** ListSessions' filter, applied the same way. */
889
934
  filter:
890
- | AISessionFilter
935
+ | SessionFilter
891
936
  | undefined;
892
937
  /** Live first-page size; server default when 0. */
893
938
  perPage: number;
@@ -919,19 +964,24 @@ export interface ListSessionEventsRequest {
919
964
  /** session_id + source_system session identity. */
920
965
  sessionId: string;
921
966
  sourceSystem: string;
967
+ filter:
968
+ | SessionEventFilter
969
+ | undefined;
970
+ /** 1..1000; server default when 0. */
971
+ pageSize: number;
972
+ /** EXCLUSIVE: a prior next_page_token, sent with the same filter; empty starts at the filter's first event. */
973
+ pageToken: string;
974
+ }
975
+
976
+ /** SessionEventFilter narrows one session's events. Fields AND; an unset field does not filter. */
977
+ export interface SessionEventFilter {
922
978
  /**
923
- * EXCLUSIVE keyset cursor from a prior next_cursor; empty starts at the oldest event.
924
- * Mutually exclusive with start_cursor.
925
- */
926
- cursor: string;
927
- perPage: number;
928
- /**
929
- * INCLUSIVE seek: start the page AT this event (>=) — for "open in transcript" /
930
- * prompt-walker jumps. Mutually exclusive with cursor.
979
+ * INCLUSIVE seek: start AT this event (>=) — for "open in transcript" / prompt-walker jumps.
980
+ * Takes an event's cursor or a timeline point's cursor.
931
981
  */
932
- startCursor: string;
982
+ startAtEvent: string;
933
983
  /**
934
- * Optional half-open [start_time, end_time) window on EventTime — a brushed timeline
984
+ * Half-open [start_time, end_time) window on EventTime — a brushed timeline
935
985
  * range returns exactly that transcript slice. Either bound may be absent.
936
986
  */
937
987
  startTime: Date | undefined;
@@ -941,7 +991,7 @@ export interface ListSessionEventsRequest {
941
991
  export interface ListSessionEventsResponse {
942
992
  status: ResponseStatus | undefined;
943
993
  events: AISessionEvent[];
944
- nextCursor: string;
994
+ nextPageToken: string;
945
995
  }
946
996
 
947
997
  export interface StreamSessionEventsRequest {
@@ -949,8 +999,8 @@ export interface StreamSessionEventsRequest {
949
999
  projectId: string;
950
1000
  sessionId: string;
951
1001
  sourceSystem: string;
952
- /** Optional resume cursor for the tail after a reconnect. */
953
- cursor: string;
1002
+ /** Optional: the last delivered event's cursor, to resume the tail after a reconnect. */
1003
+ resumeToken: string;
954
1004
  }
955
1005
 
956
1006
  export interface AISessionEventEnvelope {
@@ -1066,7 +1116,7 @@ export interface SessionTokenTimeline {
1066
1116
 
1067
1117
  /**
1068
1118
  * SessionPromptAnchor mirrors telemetry.api.v1.SessionPromptAnchor: one prompt boundary. cursor is
1069
- * the inclusive ListSessionEvents.start_cursor that opens the transcript at this prompt.
1119
+ * the inclusive ListSessionEvents filter.start_at_event that opens the transcript at this prompt.
1070
1120
  */
1071
1121
  export interface SessionPromptAnchor {
1072
1122
  logicalEventId: string;
@@ -1124,7 +1174,7 @@ export interface SessionModelUsage {
1124
1174
 
1125
1175
  /**
1126
1176
  * SessionTimelinePoint is one content-free logical event. usage is present only for a settled
1127
- * model call; cursor is the INCLUSIVE ListSessionEvents.start_cursor that opens the transcript
1177
+ * model call; cursor is the INCLUSIVE ListSessionEvents filter.start_at_event that opens the transcript
1128
1178
  * at this event; duration_ms unset means none recorded (not 0 ms).
1129
1179
  */
1130
1180
  export interface SessionTimelinePoint {
@@ -1153,9 +1203,9 @@ export interface SessionTimelinePoint {
1153
1203
  */
1154
1204
  export interface AIGitActivityFilter {
1155
1205
  /** both halves required */
1156
- session: AISessionRef[];
1157
- eventTimeAfter?: Date | undefined;
1158
- eventTimeBefore?: Date | undefined;
1206
+ sessions: AISessionRef[];
1207
+ eventTimeAfter: Date | undefined;
1208
+ eventTimeBefore: Date | undefined;
1159
1209
  }
1160
1210
 
1161
1211
  export interface ListGitActivitiesRequest {
@@ -1231,7 +1281,7 @@ export interface GitActivitySummaryRequest {
1231
1281
  organizationId: string;
1232
1282
  projectId: string;
1233
1283
  /**
1234
- * filter's session applies; its event-time bounds are ignored (time_window is the
1284
+ * filter's sessions apply; its event-time bounds are rejected (time_window is the
1235
1285
  * range).
1236
1286
  */
1237
1287
  filter:
@@ -1289,10 +1339,7 @@ export interface GitActivityMeasures {
1289
1339
  export interface TokenActivitySummaryRequest {
1290
1340
  organizationId: string;
1291
1341
  projectId: string;
1292
- /**
1293
- * filter's model / provider / source_system / user_id / api_key_id apply; its active_after is ignored
1294
- * (time_window is the range).
1295
- */
1342
+ /** Every field narrows the burn; time_window is the range. */
1296
1343
  filter:
1297
1344
  | AISessionFilter
1298
1345
  | undefined;
@@ -1338,7 +1385,7 @@ export interface TokenActivityMeasures {
1338
1385
  export interface BurnRateRequest {
1339
1386
  organizationId: string;
1340
1387
  projectId: string;
1341
- /** model / provider / source_system / user_id / api_key_id narrow current + sparkline; active_after ignored. */
1388
+ /** Every field narrows current + sparkline. */
1342
1389
  filter:
1343
1390
  | AISessionFilter
1344
1391
  | undefined;
@@ -1429,7 +1476,9 @@ export interface DailyActivityRequest_Filter {
1429
1476
 
1430
1477
  /** DailyActivityPrincipal is one user id or api key, as one source system reported it (empty = any source). */
1431
1478
  export interface DailyActivityPrincipal {
1479
+ /** USER or API_KEY; anything else is rejected. */
1432
1480
  kind: AIPrincipalKind;
1481
+ /** Empty selects work that recorded neither a user id nor an api key. */
1433
1482
  id: string;
1434
1483
  sourceSystem: string;
1435
1484
  }
@@ -1534,7 +1583,7 @@ export interface ActivityRhythmBucket {
1534
1583
  export interface ProjectOverviewRequest {
1535
1584
  organizationId: string;
1536
1585
  projectId: string;
1537
- activeAfter?: Date | undefined;
1586
+ activeAfter: Date | undefined;
1538
1587
  topSessions: number;
1539
1588
  }
1540
1589
 
@@ -1592,7 +1641,7 @@ export interface ResourceRankingsRequest {
1592
1641
  filter: AISessionFilter | undefined;
1593
1642
  dimension: AIResourceDimension;
1594
1643
  timeWindow: AnalyticsTimeWindow;
1595
- topN: number;
1644
+ limit: number;
1596
1645
  }
1597
1646
 
1598
1647
  export interface ResourceRankingsResponse {
@@ -1721,16 +1770,16 @@ export interface AISessionRef {
1721
1770
  }
1722
1771
 
1723
1772
  export interface AIFileFilter {
1724
- repositoryKey: string[];
1725
- ref: string[];
1726
- state: AIFileLifecycle[];
1727
- tier: AIFileTier[];
1773
+ repositoryKeys: string[];
1774
+ refs: string[];
1775
+ states: AIFileLifecycle[];
1776
+ tiers: AIFileTier[];
1728
1777
  /** both halves required */
1729
- session: AISessionRef[];
1730
- minAge?: Duration | undefined;
1731
- activeAfter?: Date | undefined;
1732
- activeBefore?: Date | undefined;
1733
- abandonedHorizon?: Duration | undefined;
1778
+ sessions: AISessionRef[];
1779
+ minAge: Duration | undefined;
1780
+ activeAfter: Date | undefined;
1781
+ activeBefore: Date | undefined;
1782
+ abandonedHorizon: Duration | undefined;
1734
1783
  }
1735
1784
 
1736
1785
  export interface ListFilesRequest {
@@ -1782,7 +1831,7 @@ export interface FilesSummaryRequest {
1782
1831
  organizationId: string;
1783
1832
  projectId: string;
1784
1833
  filter: AIFileFilter | undefined;
1785
- abandonedHorizon?: Duration | undefined;
1834
+ abandonedHorizon: Duration | undefined;
1786
1835
  groupBy: AIFileGroupBy;
1787
1836
  }
1788
1837
 
@@ -1838,10 +1887,10 @@ export interface ListModelPricesRequest {
1838
1887
  * fields). Filter on a display name by sending every stored name the reference registry maps onto it.
1839
1888
  */
1840
1889
  export interface AIModelPriceFilter {
1841
- source: string[];
1842
- biller: string[];
1843
- modelRaw: string[];
1844
- providerRaw: string[];
1890
+ sources: string[];
1891
+ billers: string[];
1892
+ modelRaws: string[];
1893
+ providerRaws: string[];
1845
1894
  }
1846
1895
 
1847
1896
  export interface ListModelPricesResponse {
@@ -1854,21 +1903,26 @@ export interface ListModelPricesResponse {
1854
1903
  export interface ListModelPriceHistoryRequest {
1855
1904
  organizationId: string;
1856
1905
  projectId: string;
1857
- /** model_raw is required; source, biller and provider_raw narrow it further. */
1906
+ /** model_raws is required; sources, billers and provider_raws narrow it further. */
1858
1907
  filter:
1859
1908
  | AIModelPriceFilter
1860
1909
  | undefined;
1861
1910
  /** Half-open [start_time, end_time); either may be unset to read to that end. */
1862
1911
  startTime: Date | undefined;
1863
- endTime: Date | undefined;
1912
+ endTime:
1913
+ | Date
1914
+ | undefined;
1915
+ /** 1..1000 observations; server default when 0. */
1864
1916
  pageSize: number;
1917
+ /** A prior next_page_token, sent with the same filter and range; empty starts at the first observation. */
1918
+ pageToken: string;
1865
1919
  }
1866
1920
 
1867
1921
  export interface ListModelPriceHistoryResponse {
1868
1922
  status: ResponseStatus | undefined;
1869
1923
  prices: AIModelPrice[];
1870
- /** page_size cut the series short — older observations exist beyond the last row. */
1871
- truncated: boolean;
1924
+ /** Empty once the last page has been returned. */
1925
+ nextPageToken: string;
1872
1926
  }
1873
1927
 
1874
1928
  /**
@@ -1987,7 +2041,7 @@ export interface EntitlementWindow {
1987
2041
  }
1988
2042
 
1989
2043
  function createBaseListSessionsRequest(): ListSessionsRequest {
1990
- return { organizationId: "", projectId: "", filter: undefined, page: 0, perPage: 0, sort: 0 };
2044
+ return { organizationId: "", projectId: "", filter: undefined, sort: 0, page: 0, perPage: 0 };
1991
2045
  }
1992
2046
 
1993
2047
  export const ListSessionsRequest: MessageFns<ListSessionsRequest> = {
@@ -1999,7 +2053,10 @@ export const ListSessionsRequest: MessageFns<ListSessionsRequest> = {
1999
2053
  writer.uint32(18).string(message.projectId);
2000
2054
  }
2001
2055
  if (message.filter !== undefined) {
2002
- AISessionFilter.encode(message.filter, writer.uint32(26).fork()).join();
2056
+ SessionFilter.encode(message.filter, writer.uint32(26).fork()).join();
2057
+ }
2058
+ if (message.sort !== 0) {
2059
+ writer.uint32(48).int32(message.sort);
2003
2060
  }
2004
2061
  if (message.page !== 0) {
2005
2062
  writer.uint32(32).int32(message.page);
@@ -2007,9 +2064,6 @@ export const ListSessionsRequest: MessageFns<ListSessionsRequest> = {
2007
2064
  if (message.perPage !== 0) {
2008
2065
  writer.uint32(40).int32(message.perPage);
2009
2066
  }
2010
- if (message.sort !== 0) {
2011
- writer.uint32(48).int32(message.sort);
2012
- }
2013
2067
  return writer;
2014
2068
  },
2015
2069
 
@@ -2047,7 +2101,15 @@ export const ListSessionsRequest: MessageFns<ListSessionsRequest> = {
2047
2101
  break;
2048
2102
  }
2049
2103
 
2050
- message.filter = AISessionFilter.decode(reader, reader.uint32());
2104
+ message.filter = SessionFilter.decode(reader, reader.uint32());
2105
+ continue;
2106
+ }
2107
+ case 6: {
2108
+ if (tag !== 48) {
2109
+ break;
2110
+ }
2111
+
2112
+ message.sort = reader.int32() as any;
2051
2113
  continue;
2052
2114
  }
2053
2115
  case 4: {
@@ -2066,14 +2128,6 @@ export const ListSessionsRequest: MessageFns<ListSessionsRequest> = {
2066
2128
  message.perPage = reader.int32();
2067
2129
  continue;
2068
2130
  }
2069
- case 6: {
2070
- if (tag !== 48) {
2071
- break;
2072
- }
2073
-
2074
- message.sort = reader.int32() as any;
2075
- continue;
2076
- }
2077
2131
  }
2078
2132
  if ((tag & 7) === 4 || tag === 0) {
2079
2133
  break;
@@ -2098,14 +2152,14 @@ export const ListSessionsRequest: MessageFns<ListSessionsRequest> = {
2098
2152
  : isSet(object.project_id)
2099
2153
  ? globalThis.String(object.project_id)
2100
2154
  : "",
2101
- filter: isSet(object.filter) ? AISessionFilter.fromJSON(object.filter) : undefined,
2155
+ filter: isSet(object.filter) ? SessionFilter.fromJSON(object.filter) : undefined,
2156
+ sort: isSet(object.sort) ? sessionSortFromJSON(object.sort) : 0,
2102
2157
  page: isSet(object.page) ? globalThis.Number(object.page) : 0,
2103
2158
  perPage: isSet(object.perPage)
2104
2159
  ? globalThis.Number(object.perPage)
2105
2160
  : isSet(object.per_page)
2106
2161
  ? globalThis.Number(object.per_page)
2107
2162
  : 0,
2108
- sort: isSet(object.sort) ? sessionSortFromJSON(object.sort) : 0,
2109
2163
  };
2110
2164
  },
2111
2165
 
@@ -2118,7 +2172,10 @@ export const ListSessionsRequest: MessageFns<ListSessionsRequest> = {
2118
2172
  obj.projectId = message.projectId;
2119
2173
  }
2120
2174
  if (message.filter !== undefined) {
2121
- obj.filter = AISessionFilter.toJSON(message.filter);
2175
+ obj.filter = SessionFilter.toJSON(message.filter);
2176
+ }
2177
+ if (message.sort !== 0) {
2178
+ obj.sort = sessionSortToJSON(message.sort);
2122
2179
  }
2123
2180
  if (message.page !== 0) {
2124
2181
  obj.page = Math.round(message.page);
@@ -2126,9 +2183,6 @@ export const ListSessionsRequest: MessageFns<ListSessionsRequest> = {
2126
2183
  if (message.perPage !== 0) {
2127
2184
  obj.perPage = Math.round(message.perPage);
2128
2185
  }
2129
- if (message.sort !== 0) {
2130
- obj.sort = sessionSortToJSON(message.sort);
2131
- }
2132
2186
  return obj;
2133
2187
  },
2134
2188
 
@@ -2140,46 +2194,74 @@ export const ListSessionsRequest: MessageFns<ListSessionsRequest> = {
2140
2194
  message.organizationId = object.organizationId ?? "";
2141
2195
  message.projectId = object.projectId ?? "";
2142
2196
  message.filter = (object.filter !== undefined && object.filter !== null)
2143
- ? AISessionFilter.fromPartial(object.filter)
2197
+ ? SessionFilter.fromPartial(object.filter)
2144
2198
  : undefined;
2199
+ message.sort = object.sort ?? 0;
2145
2200
  message.page = object.page ?? 0;
2146
2201
  message.perPage = object.perPage ?? 0;
2147
- message.sort = object.sort ?? 0;
2148
2202
  return message;
2149
2203
  },
2150
2204
  };
2151
2205
 
2152
- function createBaseAISessionFilter(): AISessionFilter {
2153
- return { sourceSystem: [], userId: [], apiKeyId: [], model: [], provider: [], activeAfter: undefined, effort: [] };
2206
+ function createBaseSessionFilter(): SessionFilter {
2207
+ return {
2208
+ sourceSystems: [],
2209
+ userIds: [],
2210
+ apiKeyIds: [],
2211
+ models: [],
2212
+ providers: [],
2213
+ activeAfter: undefined,
2214
+ efforts: [],
2215
+ clients: [],
2216
+ principals: [],
2217
+ search: "",
2218
+ searchPrincipals: [],
2219
+ searchStoredNames: [],
2220
+ };
2154
2221
  }
2155
2222
 
2156
- export const AISessionFilter: MessageFns<AISessionFilter> = {
2157
- encode(message: AISessionFilter, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {
2158
- for (const v of message.sourceSystem) {
2223
+ export const SessionFilter: MessageFns<SessionFilter> = {
2224
+ encode(message: SessionFilter, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {
2225
+ for (const v of message.sourceSystems) {
2159
2226
  writer.uint32(10).string(v!);
2160
2227
  }
2161
- for (const v of message.userId) {
2228
+ for (const v of message.userIds) {
2162
2229
  writer.uint32(18).string(v!);
2163
2230
  }
2164
- for (const v of message.apiKeyId) {
2231
+ for (const v of message.apiKeyIds) {
2165
2232
  writer.uint32(26).string(v!);
2166
2233
  }
2167
- for (const v of message.model) {
2234
+ for (const v of message.models) {
2168
2235
  writer.uint32(34).string(v!);
2169
2236
  }
2170
- for (const v of message.provider) {
2237
+ for (const v of message.providers) {
2171
2238
  writer.uint32(42).string(v!);
2172
2239
  }
2173
2240
  if (message.activeAfter !== undefined) {
2174
2241
  Timestamp.encode(toTimestamp(message.activeAfter), writer.uint32(50).fork()).join();
2175
2242
  }
2176
- for (const v of message.effort) {
2243
+ for (const v of message.efforts) {
2177
2244
  writer.uint32(58).string(v!);
2178
2245
  }
2246
+ for (const v of message.clients) {
2247
+ writer.uint32(66).string(v!);
2248
+ }
2249
+ for (const v of message.principals) {
2250
+ DailyActivityPrincipal.encode(v!, writer.uint32(74).fork()).join();
2251
+ }
2252
+ if (message.search !== "") {
2253
+ writer.uint32(82).string(message.search);
2254
+ }
2255
+ for (const v of message.searchPrincipals) {
2256
+ DailyActivityPrincipal.encode(v!, writer.uint32(90).fork()).join();
2257
+ }
2258
+ for (const v of message.searchStoredNames) {
2259
+ writer.uint32(98).string(v!);
2260
+ }
2179
2261
  return writer;
2180
2262
  },
2181
2263
 
2182
- decode(input: BinaryReader | Uint8Array, length?: number): AISessionFilter {
2264
+ decode(input: BinaryReader | Uint8Array, length?: number): SessionFilter {
2183
2265
  const reader = input instanceof BinaryReader ? input : new BinaryReader(input);
2184
2266
  const previousRecursionDepth = (reader as any).__tsProtoDecodeDepth ?? 0;
2185
2267
  if (previousRecursionDepth >= 100) {
@@ -2188,7 +2270,7 @@ export const AISessionFilter: MessageFns<AISessionFilter> = {
2188
2270
  (reader as any).__tsProtoDecodeDepth = previousRecursionDepth + 1;
2189
2271
  try {
2190
2272
  const end = length === undefined ? reader.len : reader.pos + length;
2191
- const message = createBaseAISessionFilter();
2273
+ const message = createBaseSessionFilter();
2192
2274
  while (reader.pos < end) {
2193
2275
  const tag = reader.uint32();
2194
2276
  switch (tag >>> 3) {
@@ -2197,7 +2279,7 @@ export const AISessionFilter: MessageFns<AISessionFilter> = {
2197
2279
  break;
2198
2280
  }
2199
2281
 
2200
- message.sourceSystem.push(reader.string());
2282
+ message.sourceSystems.push(reader.string());
2201
2283
  continue;
2202
2284
  }
2203
2285
  case 2: {
@@ -2205,7 +2287,7 @@ export const AISessionFilter: MessageFns<AISessionFilter> = {
2205
2287
  break;
2206
2288
  }
2207
2289
 
2208
- message.userId.push(reader.string());
2290
+ message.userIds.push(reader.string());
2209
2291
  continue;
2210
2292
  }
2211
2293
  case 3: {
@@ -2213,7 +2295,7 @@ export const AISessionFilter: MessageFns<AISessionFilter> = {
2213
2295
  break;
2214
2296
  }
2215
2297
 
2216
- message.apiKeyId.push(reader.string());
2298
+ message.apiKeyIds.push(reader.string());
2217
2299
  continue;
2218
2300
  }
2219
2301
  case 4: {
@@ -2221,7 +2303,7 @@ export const AISessionFilter: MessageFns<AISessionFilter> = {
2221
2303
  break;
2222
2304
  }
2223
2305
 
2224
- message.model.push(reader.string());
2306
+ message.models.push(reader.string());
2225
2307
  continue;
2226
2308
  }
2227
2309
  case 5: {
@@ -2229,7 +2311,7 @@ export const AISessionFilter: MessageFns<AISessionFilter> = {
2229
2311
  break;
2230
2312
  }
2231
2313
 
2232
- message.provider.push(reader.string());
2314
+ message.providers.push(reader.string());
2233
2315
  continue;
2234
2316
  }
2235
2317
  case 6: {
@@ -2245,7 +2327,47 @@ export const AISessionFilter: MessageFns<AISessionFilter> = {
2245
2327
  break;
2246
2328
  }
2247
2329
 
2248
- message.effort.push(reader.string());
2330
+ message.efforts.push(reader.string());
2331
+ continue;
2332
+ }
2333
+ case 8: {
2334
+ if (tag !== 66) {
2335
+ break;
2336
+ }
2337
+
2338
+ message.clients.push(reader.string());
2339
+ continue;
2340
+ }
2341
+ case 9: {
2342
+ if (tag !== 74) {
2343
+ break;
2344
+ }
2345
+
2346
+ message.principals.push(DailyActivityPrincipal.decode(reader, reader.uint32()));
2347
+ continue;
2348
+ }
2349
+ case 10: {
2350
+ if (tag !== 82) {
2351
+ break;
2352
+ }
2353
+
2354
+ message.search = reader.string();
2355
+ continue;
2356
+ }
2357
+ case 11: {
2358
+ if (tag !== 90) {
2359
+ break;
2360
+ }
2361
+
2362
+ message.searchPrincipals.push(DailyActivityPrincipal.decode(reader, reader.uint32()));
2363
+ continue;
2364
+ }
2365
+ case 12: {
2366
+ if (tag !== 98) {
2367
+ break;
2368
+ }
2369
+
2370
+ message.searchStoredNames.push(reader.string());
2249
2371
  continue;
2250
2372
  }
2251
2373
  }
@@ -2260,58 +2382,259 @@ export const AISessionFilter: MessageFns<AISessionFilter> = {
2260
2382
  }
2261
2383
  },
2262
2384
 
2263
- fromJSON(object: any): AISessionFilter {
2385
+ fromJSON(object: any): SessionFilter {
2264
2386
  return {
2265
- sourceSystem: globalThis.Array.isArray(object?.sourceSystem)
2266
- ? object.sourceSystem.map((e: any) => globalThis.String(e))
2267
- : globalThis.Array.isArray(object?.source_system)
2268
- ? object.source_system.map((e: any) => globalThis.String(e))
2387
+ sourceSystems: globalThis.Array.isArray(object?.sourceSystems)
2388
+ ? object.sourceSystems.map((e: any) => globalThis.String(e))
2389
+ : globalThis.Array.isArray(object?.source_systems)
2390
+ ? object.source_systems.map((e: any) => globalThis.String(e))
2269
2391
  : [],
2270
- userId: globalThis.Array.isArray(object?.userId)
2271
- ? object.userId.map((e: any) => globalThis.String(e))
2272
- : globalThis.Array.isArray(object?.user_id)
2273
- ? object.user_id.map((e: any) => globalThis.String(e))
2392
+ userIds: globalThis.Array.isArray(object?.userIds)
2393
+ ? object.userIds.map((e: any) => globalThis.String(e))
2394
+ : globalThis.Array.isArray(object?.user_ids)
2395
+ ? object.user_ids.map((e: any) => globalThis.String(e))
2274
2396
  : [],
2275
- apiKeyId: globalThis.Array.isArray(object?.apiKeyId)
2276
- ? object.apiKeyId.map((e: any) => globalThis.String(e))
2277
- : globalThis.Array.isArray(object?.api_key_id)
2278
- ? object.api_key_id.map((e: any) => globalThis.String(e))
2397
+ apiKeyIds: globalThis.Array.isArray(object?.apiKeyIds)
2398
+ ? object.apiKeyIds.map((e: any) => globalThis.String(e))
2399
+ : globalThis.Array.isArray(object?.api_key_ids)
2400
+ ? object.api_key_ids.map((e: any) => globalThis.String(e))
2401
+ : [],
2402
+ models: globalThis.Array.isArray(object?.models) ? object.models.map((e: any) => globalThis.String(e)) : [],
2403
+ providers: globalThis.Array.isArray(object?.providers)
2404
+ ? object.providers.map((e: any) => globalThis.String(e))
2279
2405
  : [],
2280
- model: globalThis.Array.isArray(object?.model) ? object.model.map((e: any) => globalThis.String(e)) : [],
2281
- provider: globalThis.Array.isArray(object?.provider) ? object.provider.map((e: any) => globalThis.String(e)) : [],
2282
2406
  activeAfter: isSet(object.activeAfter)
2283
2407
  ? fromJsonTimestamp(object.activeAfter)
2284
2408
  : isSet(object.active_after)
2285
2409
  ? fromJsonTimestamp(object.active_after)
2286
2410
  : undefined,
2287
- effort: globalThis.Array.isArray(object?.effort)
2288
- ? object.effort.map((e: any) => globalThis.String(e))
2411
+ efforts: globalThis.Array.isArray(object?.efforts)
2412
+ ? object.efforts.map((e: any) => globalThis.String(e))
2413
+ : [],
2414
+ clients: globalThis.Array.isArray(object?.clients) ? object.clients.map((e: any) => globalThis.String(e)) : [],
2415
+ principals: globalThis.Array.isArray(object?.principals)
2416
+ ? object.principals.map((e: any) => DailyActivityPrincipal.fromJSON(e))
2417
+ : [],
2418
+ search: isSet(object.search) ? globalThis.String(object.search) : "",
2419
+ searchPrincipals: globalThis.Array.isArray(object?.searchPrincipals)
2420
+ ? object.searchPrincipals.map((e: any) => DailyActivityPrincipal.fromJSON(e))
2421
+ : globalThis.Array.isArray(object?.search_principals)
2422
+ ? object.search_principals.map((e: any) => DailyActivityPrincipal.fromJSON(e))
2423
+ : [],
2424
+ searchStoredNames: globalThis.Array.isArray(object?.searchStoredNames)
2425
+ ? object.searchStoredNames.map((e: any) => globalThis.String(e))
2426
+ : globalThis.Array.isArray(object?.search_stored_names)
2427
+ ? object.search_stored_names.map((e: any) => globalThis.String(e))
2289
2428
  : [],
2290
2429
  };
2291
2430
  },
2292
2431
 
2293
- toJSON(message: AISessionFilter): unknown {
2432
+ toJSON(message: SessionFilter): unknown {
2294
2433
  const obj: any = {};
2295
- if (message.sourceSystem?.length) {
2296
- obj.sourceSystem = message.sourceSystem;
2434
+ if (message.sourceSystems?.length) {
2435
+ obj.sourceSystems = message.sourceSystems;
2297
2436
  }
2298
- if (message.userId?.length) {
2299
- obj.userId = message.userId;
2437
+ if (message.userIds?.length) {
2438
+ obj.userIds = message.userIds;
2300
2439
  }
2301
- if (message.apiKeyId?.length) {
2302
- obj.apiKeyId = message.apiKeyId;
2440
+ if (message.apiKeyIds?.length) {
2441
+ obj.apiKeyIds = message.apiKeyIds;
2303
2442
  }
2304
- if (message.model?.length) {
2305
- obj.model = message.model;
2443
+ if (message.models?.length) {
2444
+ obj.models = message.models;
2306
2445
  }
2307
- if (message.provider?.length) {
2308
- obj.provider = message.provider;
2446
+ if (message.providers?.length) {
2447
+ obj.providers = message.providers;
2309
2448
  }
2310
2449
  if (message.activeAfter !== undefined) {
2311
2450
  obj.activeAfter = message.activeAfter.toISOString();
2312
2451
  }
2313
- if (message.effort?.length) {
2314
- obj.effort = message.effort;
2452
+ if (message.efforts?.length) {
2453
+ obj.efforts = message.efforts;
2454
+ }
2455
+ if (message.clients?.length) {
2456
+ obj.clients = message.clients;
2457
+ }
2458
+ if (message.principals?.length) {
2459
+ obj.principals = message.principals.map((e) => DailyActivityPrincipal.toJSON(e));
2460
+ }
2461
+ if (message.search !== "") {
2462
+ obj.search = message.search;
2463
+ }
2464
+ if (message.searchPrincipals?.length) {
2465
+ obj.searchPrincipals = message.searchPrincipals.map((e) => DailyActivityPrincipal.toJSON(e));
2466
+ }
2467
+ if (message.searchStoredNames?.length) {
2468
+ obj.searchStoredNames = message.searchStoredNames;
2469
+ }
2470
+ return obj;
2471
+ },
2472
+
2473
+ create<I extends Exact<DeepPartial<SessionFilter>, I>>(base?: I): SessionFilter {
2474
+ return SessionFilter.fromPartial(base ?? ({} as any));
2475
+ },
2476
+ fromPartial<I extends Exact<DeepPartial<SessionFilter>, I>>(object: I): SessionFilter {
2477
+ const message = createBaseSessionFilter();
2478
+ message.sourceSystems = object.sourceSystems?.map((e) => e) || [];
2479
+ message.userIds = object.userIds?.map((e) => e) || [];
2480
+ message.apiKeyIds = object.apiKeyIds?.map((e) => e) || [];
2481
+ message.models = object.models?.map((e) => e) || [];
2482
+ message.providers = object.providers?.map((e) => e) || [];
2483
+ message.activeAfter = object.activeAfter ?? undefined;
2484
+ message.efforts = object.efforts?.map((e) => e) || [];
2485
+ message.clients = object.clients?.map((e) => e) || [];
2486
+ message.principals = object.principals?.map((e) => DailyActivityPrincipal.fromPartial(e)) || [];
2487
+ message.search = object.search ?? "";
2488
+ message.searchPrincipals = object.searchPrincipals?.map((e) => DailyActivityPrincipal.fromPartial(e)) || [];
2489
+ message.searchStoredNames = object.searchStoredNames?.map((e) => e) || [];
2490
+ return message;
2491
+ },
2492
+ };
2493
+
2494
+ function createBaseAISessionFilter(): AISessionFilter {
2495
+ return { sourceSystems: [], userIds: [], apiKeyIds: [], models: [], providers: [], efforts: [] };
2496
+ }
2497
+
2498
+ export const AISessionFilter: MessageFns<AISessionFilter> = {
2499
+ encode(message: AISessionFilter, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {
2500
+ for (const v of message.sourceSystems) {
2501
+ writer.uint32(10).string(v!);
2502
+ }
2503
+ for (const v of message.userIds) {
2504
+ writer.uint32(18).string(v!);
2505
+ }
2506
+ for (const v of message.apiKeyIds) {
2507
+ writer.uint32(26).string(v!);
2508
+ }
2509
+ for (const v of message.models) {
2510
+ writer.uint32(34).string(v!);
2511
+ }
2512
+ for (const v of message.providers) {
2513
+ writer.uint32(42).string(v!);
2514
+ }
2515
+ for (const v of message.efforts) {
2516
+ writer.uint32(58).string(v!);
2517
+ }
2518
+ return writer;
2519
+ },
2520
+
2521
+ decode(input: BinaryReader | Uint8Array, length?: number): AISessionFilter {
2522
+ const reader = input instanceof BinaryReader ? input : new BinaryReader(input);
2523
+ const previousRecursionDepth = (reader as any).__tsProtoDecodeDepth ?? 0;
2524
+ if (previousRecursionDepth >= 100) {
2525
+ throw new globalThis.Error("protobuf decode recursion limit exceeded");
2526
+ }
2527
+ (reader as any).__tsProtoDecodeDepth = previousRecursionDepth + 1;
2528
+ try {
2529
+ const end = length === undefined ? reader.len : reader.pos + length;
2530
+ const message = createBaseAISessionFilter();
2531
+ while (reader.pos < end) {
2532
+ const tag = reader.uint32();
2533
+ switch (tag >>> 3) {
2534
+ case 1: {
2535
+ if (tag !== 10) {
2536
+ break;
2537
+ }
2538
+
2539
+ message.sourceSystems.push(reader.string());
2540
+ continue;
2541
+ }
2542
+ case 2: {
2543
+ if (tag !== 18) {
2544
+ break;
2545
+ }
2546
+
2547
+ message.userIds.push(reader.string());
2548
+ continue;
2549
+ }
2550
+ case 3: {
2551
+ if (tag !== 26) {
2552
+ break;
2553
+ }
2554
+
2555
+ message.apiKeyIds.push(reader.string());
2556
+ continue;
2557
+ }
2558
+ case 4: {
2559
+ if (tag !== 34) {
2560
+ break;
2561
+ }
2562
+
2563
+ message.models.push(reader.string());
2564
+ continue;
2565
+ }
2566
+ case 5: {
2567
+ if (tag !== 42) {
2568
+ break;
2569
+ }
2570
+
2571
+ message.providers.push(reader.string());
2572
+ continue;
2573
+ }
2574
+ case 7: {
2575
+ if (tag !== 58) {
2576
+ break;
2577
+ }
2578
+
2579
+ message.efforts.push(reader.string());
2580
+ continue;
2581
+ }
2582
+ }
2583
+ if ((tag & 7) === 4 || tag === 0) {
2584
+ break;
2585
+ }
2586
+ reader.skip(tag & 7);
2587
+ }
2588
+ return message;
2589
+ } finally {
2590
+ (reader as any).__tsProtoDecodeDepth = previousRecursionDepth;
2591
+ }
2592
+ },
2593
+
2594
+ fromJSON(object: any): AISessionFilter {
2595
+ return {
2596
+ sourceSystems: globalThis.Array.isArray(object?.sourceSystems)
2597
+ ? object.sourceSystems.map((e: any) => globalThis.String(e))
2598
+ : globalThis.Array.isArray(object?.source_systems)
2599
+ ? object.source_systems.map((e: any) => globalThis.String(e))
2600
+ : [],
2601
+ userIds: globalThis.Array.isArray(object?.userIds)
2602
+ ? object.userIds.map((e: any) => globalThis.String(e))
2603
+ : globalThis.Array.isArray(object?.user_ids)
2604
+ ? object.user_ids.map((e: any) => globalThis.String(e))
2605
+ : [],
2606
+ apiKeyIds: globalThis.Array.isArray(object?.apiKeyIds)
2607
+ ? object.apiKeyIds.map((e: any) => globalThis.String(e))
2608
+ : globalThis.Array.isArray(object?.api_key_ids)
2609
+ ? object.api_key_ids.map((e: any) => globalThis.String(e))
2610
+ : [],
2611
+ models: globalThis.Array.isArray(object?.models) ? object.models.map((e: any) => globalThis.String(e)) : [],
2612
+ providers: globalThis.Array.isArray(object?.providers)
2613
+ ? object.providers.map((e: any) => globalThis.String(e))
2614
+ : [],
2615
+ efforts: globalThis.Array.isArray(object?.efforts) ? object.efforts.map((e: any) => globalThis.String(e)) : [],
2616
+ };
2617
+ },
2618
+
2619
+ toJSON(message: AISessionFilter): unknown {
2620
+ const obj: any = {};
2621
+ if (message.sourceSystems?.length) {
2622
+ obj.sourceSystems = message.sourceSystems;
2623
+ }
2624
+ if (message.userIds?.length) {
2625
+ obj.userIds = message.userIds;
2626
+ }
2627
+ if (message.apiKeyIds?.length) {
2628
+ obj.apiKeyIds = message.apiKeyIds;
2629
+ }
2630
+ if (message.models?.length) {
2631
+ obj.models = message.models;
2632
+ }
2633
+ if (message.providers?.length) {
2634
+ obj.providers = message.providers;
2635
+ }
2636
+ if (message.efforts?.length) {
2637
+ obj.efforts = message.efforts;
2315
2638
  }
2316
2639
  return obj;
2317
2640
  },
@@ -2321,13 +2644,12 @@ export const AISessionFilter: MessageFns<AISessionFilter> = {
2321
2644
  },
2322
2645
  fromPartial<I extends Exact<DeepPartial<AISessionFilter>, I>>(object: I): AISessionFilter {
2323
2646
  const message = createBaseAISessionFilter();
2324
- message.sourceSystem = object.sourceSystem?.map((e) => e) || [];
2325
- message.userId = object.userId?.map((e) => e) || [];
2326
- message.apiKeyId = object.apiKeyId?.map((e) => e) || [];
2327
- message.model = object.model?.map((e) => e) || [];
2328
- message.provider = object.provider?.map((e) => e) || [];
2329
- message.activeAfter = object.activeAfter ?? undefined;
2330
- message.effort = object.effort?.map((e) => e) || [];
2647
+ message.sourceSystems = object.sourceSystems?.map((e) => e) || [];
2648
+ message.userIds = object.userIds?.map((e) => e) || [];
2649
+ message.apiKeyIds = object.apiKeyIds?.map((e) => e) || [];
2650
+ message.models = object.models?.map((e) => e) || [];
2651
+ message.providers = object.providers?.map((e) => e) || [];
2652
+ message.efforts = object.efforts?.map((e) => e) || [];
2331
2653
  return message;
2332
2654
  },
2333
2655
  };
@@ -2440,7 +2762,7 @@ export const ListSessionsResponse: MessageFns<ListSessionsResponse> = {
2440
2762
  };
2441
2763
 
2442
2764
  function createBaseSessionPagination(): SessionPagination {
2443
- return { page: 0, perPage: 0, total: 0, totalPages: 0 };
2765
+ return { page: 0, perPage: 0, totalCount: 0, totalPages: 0 };
2444
2766
  }
2445
2767
 
2446
2768
  export const SessionPagination: MessageFns<SessionPagination> = {
@@ -2451,8 +2773,8 @@ export const SessionPagination: MessageFns<SessionPagination> = {
2451
2773
  if (message.perPage !== 0) {
2452
2774
  writer.uint32(16).int32(message.perPage);
2453
2775
  }
2454
- if (message.total !== 0) {
2455
- writer.uint32(24).int64(message.total);
2776
+ if (message.totalCount !== 0) {
2777
+ writer.uint32(24).int64(message.totalCount);
2456
2778
  }
2457
2779
  if (message.totalPages !== 0) {
2458
2780
  writer.uint32(32).int32(message.totalPages);
@@ -2494,7 +2816,7 @@ export const SessionPagination: MessageFns<SessionPagination> = {
2494
2816
  break;
2495
2817
  }
2496
2818
 
2497
- message.total = longToNumber(reader.int64());
2819
+ message.totalCount = longToNumber(reader.int64());
2498
2820
  continue;
2499
2821
  }
2500
2822
  case 4: {
@@ -2525,7 +2847,11 @@ export const SessionPagination: MessageFns<SessionPagination> = {
2525
2847
  : isSet(object.per_page)
2526
2848
  ? globalThis.Number(object.per_page)
2527
2849
  : 0,
2528
- total: isSet(object.total) ? globalThis.Number(object.total) : 0,
2850
+ totalCount: isSet(object.totalCount)
2851
+ ? globalThis.Number(object.totalCount)
2852
+ : isSet(object.total_count)
2853
+ ? globalThis.Number(object.total_count)
2854
+ : 0,
2529
2855
  totalPages: isSet(object.totalPages)
2530
2856
  ? globalThis.Number(object.totalPages)
2531
2857
  : isSet(object.total_pages)
@@ -2542,8 +2868,8 @@ export const SessionPagination: MessageFns<SessionPagination> = {
2542
2868
  if (message.perPage !== 0) {
2543
2869
  obj.perPage = Math.round(message.perPage);
2544
2870
  }
2545
- if (message.total !== 0) {
2546
- obj.total = Math.round(message.total);
2871
+ if (message.totalCount !== 0) {
2872
+ obj.totalCount = Math.round(message.totalCount);
2547
2873
  }
2548
2874
  if (message.totalPages !== 0) {
2549
2875
  obj.totalPages = Math.round(message.totalPages);
@@ -2558,7 +2884,7 @@ export const SessionPagination: MessageFns<SessionPagination> = {
2558
2884
  const message = createBaseSessionPagination();
2559
2885
  message.page = object.page ?? 0;
2560
2886
  message.perPage = object.perPage ?? 0;
2561
- message.total = object.total ?? 0;
2887
+ message.totalCount = object.totalCount ?? 0;
2562
2888
  message.totalPages = object.totalPages ?? 0;
2563
2889
  return message;
2564
2890
  },
@@ -3307,7 +3633,7 @@ export const StreamSessionsRequest: MessageFns<StreamSessionsRequest> = {
3307
3633
  writer.uint32(18).string(message.projectId);
3308
3634
  }
3309
3635
  if (message.filter !== undefined) {
3310
- AISessionFilter.encode(message.filter, writer.uint32(26).fork()).join();
3636
+ SessionFilter.encode(message.filter, writer.uint32(26).fork()).join();
3311
3637
  }
3312
3638
  if (message.perPage !== 0) {
3313
3639
  writer.uint32(32).int32(message.perPage);
@@ -3352,7 +3678,7 @@ export const StreamSessionsRequest: MessageFns<StreamSessionsRequest> = {
3352
3678
  break;
3353
3679
  }
3354
3680
 
3355
- message.filter = AISessionFilter.decode(reader, reader.uint32());
3681
+ message.filter = SessionFilter.decode(reader, reader.uint32());
3356
3682
  continue;
3357
3683
  }
3358
3684
  case 4: {
@@ -3395,7 +3721,7 @@ export const StreamSessionsRequest: MessageFns<StreamSessionsRequest> = {
3395
3721
  : isSet(object.project_id)
3396
3722
  ? globalThis.String(object.project_id)
3397
3723
  : "",
3398
- filter: isSet(object.filter) ? AISessionFilter.fromJSON(object.filter) : undefined,
3724
+ filter: isSet(object.filter) ? SessionFilter.fromJSON(object.filter) : undefined,
3399
3725
  perPage: isSet(object.perPage)
3400
3726
  ? globalThis.Number(object.perPage)
3401
3727
  : isSet(object.per_page)
@@ -3414,7 +3740,7 @@ export const StreamSessionsRequest: MessageFns<StreamSessionsRequest> = {
3414
3740
  obj.projectId = message.projectId;
3415
3741
  }
3416
3742
  if (message.filter !== undefined) {
3417
- obj.filter = AISessionFilter.toJSON(message.filter);
3743
+ obj.filter = SessionFilter.toJSON(message.filter);
3418
3744
  }
3419
3745
  if (message.perPage !== 0) {
3420
3746
  obj.perPage = Math.round(message.perPage);
@@ -3433,7 +3759,7 @@ export const StreamSessionsRequest: MessageFns<StreamSessionsRequest> = {
3433
3759
  message.organizationId = object.organizationId ?? "";
3434
3760
  message.projectId = object.projectId ?? "";
3435
3761
  message.filter = (object.filter !== undefined && object.filter !== null)
3436
- ? AISessionFilter.fromPartial(object.filter)
3762
+ ? SessionFilter.fromPartial(object.filter)
3437
3763
  : undefined;
3438
3764
  message.perPage = object.perPage ?? 0;
3439
3765
  message.sort = object.sort ?? 0;
@@ -3669,11 +3995,9 @@ function createBaseListSessionEventsRequest(): ListSessionEventsRequest {
3669
3995
  projectId: "",
3670
3996
  sessionId: "",
3671
3997
  sourceSystem: "",
3672
- cursor: "",
3673
- perPage: 0,
3674
- startCursor: "",
3675
- startTime: undefined,
3676
- endTime: undefined,
3998
+ filter: undefined,
3999
+ pageSize: 0,
4000
+ pageToken: "",
3677
4001
  };
3678
4002
  }
3679
4003
 
@@ -3691,20 +4015,14 @@ export const ListSessionEventsRequest: MessageFns<ListSessionEventsRequest> = {
3691
4015
  if (message.sourceSystem !== "") {
3692
4016
  writer.uint32(34).string(message.sourceSystem);
3693
4017
  }
3694
- if (message.cursor !== "") {
3695
- writer.uint32(42).string(message.cursor);
3696
- }
3697
- if (message.perPage !== 0) {
3698
- writer.uint32(48).int32(message.perPage);
3699
- }
3700
- if (message.startCursor !== "") {
3701
- writer.uint32(58).string(message.startCursor);
4018
+ if (message.filter !== undefined) {
4019
+ SessionEventFilter.encode(message.filter, writer.uint32(82).fork()).join();
3702
4020
  }
3703
- if (message.startTime !== undefined) {
3704
- Timestamp.encode(toTimestamp(message.startTime), writer.uint32(66).fork()).join();
4021
+ if (message.pageSize !== 0) {
4022
+ writer.uint32(48).int32(message.pageSize);
3705
4023
  }
3706
- if (message.endTime !== undefined) {
3707
- Timestamp.encode(toTimestamp(message.endTime), writer.uint32(74).fork()).join();
4024
+ if (message.pageToken !== "") {
4025
+ writer.uint32(90).string(message.pageToken);
3708
4026
  }
3709
4027
  return writer;
3710
4028
  },
@@ -3754,12 +4072,12 @@ export const ListSessionEventsRequest: MessageFns<ListSessionEventsRequest> = {
3754
4072
  message.sourceSystem = reader.string();
3755
4073
  continue;
3756
4074
  }
3757
- case 5: {
3758
- if (tag !== 42) {
4075
+ case 10: {
4076
+ if (tag !== 82) {
3759
4077
  break;
3760
4078
  }
3761
4079
 
3762
- message.cursor = reader.string();
4080
+ message.filter = SessionEventFilter.decode(reader, reader.uint32());
3763
4081
  continue;
3764
4082
  }
3765
4083
  case 6: {
@@ -3767,31 +4085,15 @@ export const ListSessionEventsRequest: MessageFns<ListSessionEventsRequest> = {
3767
4085
  break;
3768
4086
  }
3769
4087
 
3770
- message.perPage = reader.int32();
3771
- continue;
3772
- }
3773
- case 7: {
3774
- if (tag !== 58) {
3775
- break;
3776
- }
3777
-
3778
- message.startCursor = reader.string();
3779
- continue;
3780
- }
3781
- case 8: {
3782
- if (tag !== 66) {
3783
- break;
3784
- }
3785
-
3786
- message.startTime = fromTimestamp(Timestamp.decode(reader, reader.uint32()));
4088
+ message.pageSize = reader.int32();
3787
4089
  continue;
3788
4090
  }
3789
- case 9: {
3790
- if (tag !== 74) {
4091
+ case 11: {
4092
+ if (tag !== 90) {
3791
4093
  break;
3792
4094
  }
3793
4095
 
3794
- message.endTime = fromTimestamp(Timestamp.decode(reader, reader.uint32()));
4096
+ message.pageToken = reader.string();
3795
4097
  continue;
3796
4098
  }
3797
4099
  }
@@ -3828,27 +4130,17 @@ export const ListSessionEventsRequest: MessageFns<ListSessionEventsRequest> = {
3828
4130
  : isSet(object.source_system)
3829
4131
  ? globalThis.String(object.source_system)
3830
4132
  : "",
3831
- cursor: isSet(object.cursor) ? globalThis.String(object.cursor) : "",
3832
- perPage: isSet(object.perPage)
3833
- ? globalThis.Number(object.perPage)
3834
- : isSet(object.per_page)
3835
- ? globalThis.Number(object.per_page)
4133
+ filter: isSet(object.filter) ? SessionEventFilter.fromJSON(object.filter) : undefined,
4134
+ pageSize: isSet(object.pageSize)
4135
+ ? globalThis.Number(object.pageSize)
4136
+ : isSet(object.page_size)
4137
+ ? globalThis.Number(object.page_size)
3836
4138
  : 0,
3837
- startCursor: isSet(object.startCursor)
3838
- ? globalThis.String(object.startCursor)
3839
- : isSet(object.start_cursor)
3840
- ? globalThis.String(object.start_cursor)
4139
+ pageToken: isSet(object.pageToken)
4140
+ ? globalThis.String(object.pageToken)
4141
+ : isSet(object.page_token)
4142
+ ? globalThis.String(object.page_token)
3841
4143
  : "",
3842
- startTime: isSet(object.startTime)
3843
- ? fromJsonTimestamp(object.startTime)
3844
- : isSet(object.start_time)
3845
- ? fromJsonTimestamp(object.start_time)
3846
- : undefined,
3847
- endTime: isSet(object.endTime)
3848
- ? fromJsonTimestamp(object.endTime)
3849
- : isSet(object.end_time)
3850
- ? fromJsonTimestamp(object.end_time)
3851
- : undefined,
3852
4144
  };
3853
4145
  },
3854
4146
 
@@ -3866,20 +4158,14 @@ export const ListSessionEventsRequest: MessageFns<ListSessionEventsRequest> = {
3866
4158
  if (message.sourceSystem !== "") {
3867
4159
  obj.sourceSystem = message.sourceSystem;
3868
4160
  }
3869
- if (message.cursor !== "") {
3870
- obj.cursor = message.cursor;
3871
- }
3872
- if (message.perPage !== 0) {
3873
- obj.perPage = Math.round(message.perPage);
3874
- }
3875
- if (message.startCursor !== "") {
3876
- obj.startCursor = message.startCursor;
4161
+ if (message.filter !== undefined) {
4162
+ obj.filter = SessionEventFilter.toJSON(message.filter);
3877
4163
  }
3878
- if (message.startTime !== undefined) {
3879
- obj.startTime = message.startTime.toISOString();
4164
+ if (message.pageSize !== 0) {
4165
+ obj.pageSize = Math.round(message.pageSize);
3880
4166
  }
3881
- if (message.endTime !== undefined) {
3882
- obj.endTime = message.endTime.toISOString();
4167
+ if (message.pageToken !== "") {
4168
+ obj.pageToken = message.pageToken;
3883
4169
  }
3884
4170
  return obj;
3885
4171
  },
@@ -3893,9 +4179,122 @@ export const ListSessionEventsRequest: MessageFns<ListSessionEventsRequest> = {
3893
4179
  message.projectId = object.projectId ?? "";
3894
4180
  message.sessionId = object.sessionId ?? "";
3895
4181
  message.sourceSystem = object.sourceSystem ?? "";
3896
- message.cursor = object.cursor ?? "";
3897
- message.perPage = object.perPage ?? 0;
3898
- message.startCursor = object.startCursor ?? "";
4182
+ message.filter = (object.filter !== undefined && object.filter !== null)
4183
+ ? SessionEventFilter.fromPartial(object.filter)
4184
+ : undefined;
4185
+ message.pageSize = object.pageSize ?? 0;
4186
+ message.pageToken = object.pageToken ?? "";
4187
+ return message;
4188
+ },
4189
+ };
4190
+
4191
+ function createBaseSessionEventFilter(): SessionEventFilter {
4192
+ return { startAtEvent: "", startTime: undefined, endTime: undefined };
4193
+ }
4194
+
4195
+ export const SessionEventFilter: MessageFns<SessionEventFilter> = {
4196
+ encode(message: SessionEventFilter, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {
4197
+ if (message.startAtEvent !== "") {
4198
+ writer.uint32(10).string(message.startAtEvent);
4199
+ }
4200
+ if (message.startTime !== undefined) {
4201
+ Timestamp.encode(toTimestamp(message.startTime), writer.uint32(18).fork()).join();
4202
+ }
4203
+ if (message.endTime !== undefined) {
4204
+ Timestamp.encode(toTimestamp(message.endTime), writer.uint32(26).fork()).join();
4205
+ }
4206
+ return writer;
4207
+ },
4208
+
4209
+ decode(input: BinaryReader | Uint8Array, length?: number): SessionEventFilter {
4210
+ const reader = input instanceof BinaryReader ? input : new BinaryReader(input);
4211
+ const previousRecursionDepth = (reader as any).__tsProtoDecodeDepth ?? 0;
4212
+ if (previousRecursionDepth >= 100) {
4213
+ throw new globalThis.Error("protobuf decode recursion limit exceeded");
4214
+ }
4215
+ (reader as any).__tsProtoDecodeDepth = previousRecursionDepth + 1;
4216
+ try {
4217
+ const end = length === undefined ? reader.len : reader.pos + length;
4218
+ const message = createBaseSessionEventFilter();
4219
+ while (reader.pos < end) {
4220
+ const tag = reader.uint32();
4221
+ switch (tag >>> 3) {
4222
+ case 1: {
4223
+ if (tag !== 10) {
4224
+ break;
4225
+ }
4226
+
4227
+ message.startAtEvent = reader.string();
4228
+ continue;
4229
+ }
4230
+ case 2: {
4231
+ if (tag !== 18) {
4232
+ break;
4233
+ }
4234
+
4235
+ message.startTime = fromTimestamp(Timestamp.decode(reader, reader.uint32()));
4236
+ continue;
4237
+ }
4238
+ case 3: {
4239
+ if (tag !== 26) {
4240
+ break;
4241
+ }
4242
+
4243
+ message.endTime = fromTimestamp(Timestamp.decode(reader, reader.uint32()));
4244
+ continue;
4245
+ }
4246
+ }
4247
+ if ((tag & 7) === 4 || tag === 0) {
4248
+ break;
4249
+ }
4250
+ reader.skip(tag & 7);
4251
+ }
4252
+ return message;
4253
+ } finally {
4254
+ (reader as any).__tsProtoDecodeDepth = previousRecursionDepth;
4255
+ }
4256
+ },
4257
+
4258
+ fromJSON(object: any): SessionEventFilter {
4259
+ return {
4260
+ startAtEvent: isSet(object.startAtEvent)
4261
+ ? globalThis.String(object.startAtEvent)
4262
+ : isSet(object.start_at_event)
4263
+ ? globalThis.String(object.start_at_event)
4264
+ : "",
4265
+ startTime: isSet(object.startTime)
4266
+ ? fromJsonTimestamp(object.startTime)
4267
+ : isSet(object.start_time)
4268
+ ? fromJsonTimestamp(object.start_time)
4269
+ : undefined,
4270
+ endTime: isSet(object.endTime)
4271
+ ? fromJsonTimestamp(object.endTime)
4272
+ : isSet(object.end_time)
4273
+ ? fromJsonTimestamp(object.end_time)
4274
+ : undefined,
4275
+ };
4276
+ },
4277
+
4278
+ toJSON(message: SessionEventFilter): unknown {
4279
+ const obj: any = {};
4280
+ if (message.startAtEvent !== "") {
4281
+ obj.startAtEvent = message.startAtEvent;
4282
+ }
4283
+ if (message.startTime !== undefined) {
4284
+ obj.startTime = message.startTime.toISOString();
4285
+ }
4286
+ if (message.endTime !== undefined) {
4287
+ obj.endTime = message.endTime.toISOString();
4288
+ }
4289
+ return obj;
4290
+ },
4291
+
4292
+ create<I extends Exact<DeepPartial<SessionEventFilter>, I>>(base?: I): SessionEventFilter {
4293
+ return SessionEventFilter.fromPartial(base ?? ({} as any));
4294
+ },
4295
+ fromPartial<I extends Exact<DeepPartial<SessionEventFilter>, I>>(object: I): SessionEventFilter {
4296
+ const message = createBaseSessionEventFilter();
4297
+ message.startAtEvent = object.startAtEvent ?? "";
3899
4298
  message.startTime = object.startTime ?? undefined;
3900
4299
  message.endTime = object.endTime ?? undefined;
3901
4300
  return message;
@@ -3903,7 +4302,7 @@ export const ListSessionEventsRequest: MessageFns<ListSessionEventsRequest> = {
3903
4302
  };
3904
4303
 
3905
4304
  function createBaseListSessionEventsResponse(): ListSessionEventsResponse {
3906
- return { status: undefined, events: [], nextCursor: "" };
4305
+ return { status: undefined, events: [], nextPageToken: "" };
3907
4306
  }
3908
4307
 
3909
4308
  export const ListSessionEventsResponse: MessageFns<ListSessionEventsResponse> = {
@@ -3914,8 +4313,8 @@ export const ListSessionEventsResponse: MessageFns<ListSessionEventsResponse> =
3914
4313
  for (const v of message.events) {
3915
4314
  AISessionEvent.encode(v!, writer.uint32(18).fork()).join();
3916
4315
  }
3917
- if (message.nextCursor !== "") {
3918
- writer.uint32(26).string(message.nextCursor);
4316
+ if (message.nextPageToken !== "") {
4317
+ writer.uint32(26).string(message.nextPageToken);
3919
4318
  }
3920
4319
  return writer;
3921
4320
  },
@@ -3954,7 +4353,7 @@ export const ListSessionEventsResponse: MessageFns<ListSessionEventsResponse> =
3954
4353
  break;
3955
4354
  }
3956
4355
 
3957
- message.nextCursor = reader.string();
4356
+ message.nextPageToken = reader.string();
3958
4357
  continue;
3959
4358
  }
3960
4359
  }
@@ -3973,10 +4372,10 @@ export const ListSessionEventsResponse: MessageFns<ListSessionEventsResponse> =
3973
4372
  return {
3974
4373
  status: isSet(object.status) ? ResponseStatus.fromJSON(object.status) : undefined,
3975
4374
  events: globalThis.Array.isArray(object?.events) ? object.events.map((e: any) => AISessionEvent.fromJSON(e)) : [],
3976
- nextCursor: isSet(object.nextCursor)
3977
- ? globalThis.String(object.nextCursor)
3978
- : isSet(object.next_cursor)
3979
- ? globalThis.String(object.next_cursor)
4375
+ nextPageToken: isSet(object.nextPageToken)
4376
+ ? globalThis.String(object.nextPageToken)
4377
+ : isSet(object.next_page_token)
4378
+ ? globalThis.String(object.next_page_token)
3980
4379
  : "",
3981
4380
  };
3982
4381
  },
@@ -3989,8 +4388,8 @@ export const ListSessionEventsResponse: MessageFns<ListSessionEventsResponse> =
3989
4388
  if (message.events?.length) {
3990
4389
  obj.events = message.events.map((e) => AISessionEvent.toJSON(e));
3991
4390
  }
3992
- if (message.nextCursor !== "") {
3993
- obj.nextCursor = message.nextCursor;
4391
+ if (message.nextPageToken !== "") {
4392
+ obj.nextPageToken = message.nextPageToken;
3994
4393
  }
3995
4394
  return obj;
3996
4395
  },
@@ -4004,13 +4403,13 @@ export const ListSessionEventsResponse: MessageFns<ListSessionEventsResponse> =
4004
4403
  ? ResponseStatus.fromPartial(object.status)
4005
4404
  : undefined;
4006
4405
  message.events = object.events?.map((e) => AISessionEvent.fromPartial(e)) || [];
4007
- message.nextCursor = object.nextCursor ?? "";
4406
+ message.nextPageToken = object.nextPageToken ?? "";
4008
4407
  return message;
4009
4408
  },
4010
4409
  };
4011
4410
 
4012
4411
  function createBaseStreamSessionEventsRequest(): StreamSessionEventsRequest {
4013
- return { organizationId: "", projectId: "", sessionId: "", sourceSystem: "", cursor: "" };
4412
+ return { organizationId: "", projectId: "", sessionId: "", sourceSystem: "", resumeToken: "" };
4014
4413
  }
4015
4414
 
4016
4415
  export const StreamSessionEventsRequest: MessageFns<StreamSessionEventsRequest> = {
@@ -4027,8 +4426,8 @@ export const StreamSessionEventsRequest: MessageFns<StreamSessionEventsRequest>
4027
4426
  if (message.sourceSystem !== "") {
4028
4427
  writer.uint32(34).string(message.sourceSystem);
4029
4428
  }
4030
- if (message.cursor !== "") {
4031
- writer.uint32(42).string(message.cursor);
4429
+ if (message.resumeToken !== "") {
4430
+ writer.uint32(42).string(message.resumeToken);
4032
4431
  }
4033
4432
  return writer;
4034
4433
  },
@@ -4083,7 +4482,7 @@ export const StreamSessionEventsRequest: MessageFns<StreamSessionEventsRequest>
4083
4482
  break;
4084
4483
  }
4085
4484
 
4086
- message.cursor = reader.string();
4485
+ message.resumeToken = reader.string();
4087
4486
  continue;
4088
4487
  }
4089
4488
  }
@@ -4120,7 +4519,11 @@ export const StreamSessionEventsRequest: MessageFns<StreamSessionEventsRequest>
4120
4519
  : isSet(object.source_system)
4121
4520
  ? globalThis.String(object.source_system)
4122
4521
  : "",
4123
- cursor: isSet(object.cursor) ? globalThis.String(object.cursor) : "",
4522
+ resumeToken: isSet(object.resumeToken)
4523
+ ? globalThis.String(object.resumeToken)
4524
+ : isSet(object.resume_token)
4525
+ ? globalThis.String(object.resume_token)
4526
+ : "",
4124
4527
  };
4125
4528
  },
4126
4529
 
@@ -4138,8 +4541,8 @@ export const StreamSessionEventsRequest: MessageFns<StreamSessionEventsRequest>
4138
4541
  if (message.sourceSystem !== "") {
4139
4542
  obj.sourceSystem = message.sourceSystem;
4140
4543
  }
4141
- if (message.cursor !== "") {
4142
- obj.cursor = message.cursor;
4544
+ if (message.resumeToken !== "") {
4545
+ obj.resumeToken = message.resumeToken;
4143
4546
  }
4144
4547
  return obj;
4145
4548
  },
@@ -4153,7 +4556,7 @@ export const StreamSessionEventsRequest: MessageFns<StreamSessionEventsRequest>
4153
4556
  message.projectId = object.projectId ?? "";
4154
4557
  message.sessionId = object.sessionId ?? "";
4155
4558
  message.sourceSystem = object.sourceSystem ?? "";
4156
- message.cursor = object.cursor ?? "";
4559
+ message.resumeToken = object.resumeToken ?? "";
4157
4560
  return message;
4158
4561
  },
4159
4562
  };
@@ -6376,12 +6779,12 @@ export const SessionTimelinePoint: MessageFns<SessionTimelinePoint> = {
6376
6779
  };
6377
6780
 
6378
6781
  function createBaseAIGitActivityFilter(): AIGitActivityFilter {
6379
- return { session: [], eventTimeAfter: undefined, eventTimeBefore: undefined };
6782
+ return { sessions: [], eventTimeAfter: undefined, eventTimeBefore: undefined };
6380
6783
  }
6381
6784
 
6382
6785
  export const AIGitActivityFilter: MessageFns<AIGitActivityFilter> = {
6383
6786
  encode(message: AIGitActivityFilter, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {
6384
- for (const v of message.session) {
6787
+ for (const v of message.sessions) {
6385
6788
  AISessionRef.encode(v!, writer.uint32(10).fork()).join();
6386
6789
  }
6387
6790
  if (message.eventTimeAfter !== undefined) {
@@ -6411,7 +6814,7 @@ export const AIGitActivityFilter: MessageFns<AIGitActivityFilter> = {
6411
6814
  break;
6412
6815
  }
6413
6816
 
6414
- message.session.push(AISessionRef.decode(reader, reader.uint32()));
6817
+ message.sessions.push(AISessionRef.decode(reader, reader.uint32()));
6415
6818
  continue;
6416
6819
  }
6417
6820
  case 2: {
@@ -6444,8 +6847,8 @@ export const AIGitActivityFilter: MessageFns<AIGitActivityFilter> = {
6444
6847
 
6445
6848
  fromJSON(object: any): AIGitActivityFilter {
6446
6849
  return {
6447
- session: globalThis.Array.isArray(object?.session)
6448
- ? object.session.map((e: any) => AISessionRef.fromJSON(e))
6850
+ sessions: globalThis.Array.isArray(object?.sessions)
6851
+ ? object.sessions.map((e: any) => AISessionRef.fromJSON(e))
6449
6852
  : [],
6450
6853
  eventTimeAfter: isSet(object.eventTimeAfter)
6451
6854
  ? fromJsonTimestamp(object.eventTimeAfter)
@@ -6462,8 +6865,8 @@ export const AIGitActivityFilter: MessageFns<AIGitActivityFilter> = {
6462
6865
 
6463
6866
  toJSON(message: AIGitActivityFilter): unknown {
6464
6867
  const obj: any = {};
6465
- if (message.session?.length) {
6466
- obj.session = message.session.map((e) => AISessionRef.toJSON(e));
6868
+ if (message.sessions?.length) {
6869
+ obj.sessions = message.sessions.map((e) => AISessionRef.toJSON(e));
6467
6870
  }
6468
6871
  if (message.eventTimeAfter !== undefined) {
6469
6872
  obj.eventTimeAfter = message.eventTimeAfter.toISOString();
@@ -6479,7 +6882,7 @@ export const AIGitActivityFilter: MessageFns<AIGitActivityFilter> = {
6479
6882
  },
6480
6883
  fromPartial<I extends Exact<DeepPartial<AIGitActivityFilter>, I>>(object: I): AIGitActivityFilter {
6481
6884
  const message = createBaseAIGitActivityFilter();
6482
- message.session = object.session?.map((e) => AISessionRef.fromPartial(e)) || [];
6885
+ message.sessions = object.sessions?.map((e) => AISessionRef.fromPartial(e)) || [];
6483
6886
  message.eventTimeAfter = object.eventTimeAfter ?? undefined;
6484
6887
  message.eventTimeBefore = object.eventTimeBefore ?? undefined;
6485
6888
  return message;
@@ -12631,7 +13034,7 @@ export const ProjectSessionRef: MessageFns<ProjectSessionRef> = {
12631
13034
  };
12632
13035
 
12633
13036
  function createBaseResourceRankingsRequest(): ResourceRankingsRequest {
12634
- return { organizationId: "", projectId: "", filter: undefined, dimension: 0, timeWindow: 0, topN: 0 };
13037
+ return { organizationId: "", projectId: "", filter: undefined, dimension: 0, timeWindow: 0, limit: 0 };
12635
13038
  }
12636
13039
 
12637
13040
  export const ResourceRankingsRequest: MessageFns<ResourceRankingsRequest> = {
@@ -12651,8 +13054,8 @@ export const ResourceRankingsRequest: MessageFns<ResourceRankingsRequest> = {
12651
13054
  if (message.timeWindow !== 0) {
12652
13055
  writer.uint32(40).int32(message.timeWindow);
12653
13056
  }
12654
- if (message.topN !== 0) {
12655
- writer.uint32(48).int32(message.topN);
13057
+ if (message.limit !== 0) {
13058
+ writer.uint32(48).int32(message.limit);
12656
13059
  }
12657
13060
  return writer;
12658
13061
  },
@@ -12715,7 +13118,7 @@ export const ResourceRankingsRequest: MessageFns<ResourceRankingsRequest> = {
12715
13118
  break;
12716
13119
  }
12717
13120
 
12718
- message.topN = reader.int32();
13121
+ message.limit = reader.int32();
12719
13122
  continue;
12720
13123
  }
12721
13124
  }
@@ -12749,11 +13152,7 @@ export const ResourceRankingsRequest: MessageFns<ResourceRankingsRequest> = {
12749
13152
  : isSet(object.time_window)
12750
13153
  ? analyticsTimeWindowFromJSON(object.time_window)
12751
13154
  : 0,
12752
- topN: isSet(object.topN)
12753
- ? globalThis.Number(object.topN)
12754
- : isSet(object.top_n)
12755
- ? globalThis.Number(object.top_n)
12756
- : 0,
13155
+ limit: isSet(object.limit) ? globalThis.Number(object.limit) : 0,
12757
13156
  };
12758
13157
  },
12759
13158
 
@@ -12774,8 +13173,8 @@ export const ResourceRankingsRequest: MessageFns<ResourceRankingsRequest> = {
12774
13173
  if (message.timeWindow !== 0) {
12775
13174
  obj.timeWindow = analyticsTimeWindowToJSON(message.timeWindow);
12776
13175
  }
12777
- if (message.topN !== 0) {
12778
- obj.topN = Math.round(message.topN);
13176
+ if (message.limit !== 0) {
13177
+ obj.limit = Math.round(message.limit);
12779
13178
  }
12780
13179
  return obj;
12781
13180
  },
@@ -12792,7 +13191,7 @@ export const ResourceRankingsRequest: MessageFns<ResourceRankingsRequest> = {
12792
13191
  : undefined;
12793
13192
  message.dimension = object.dimension ?? 0;
12794
13193
  message.timeWindow = object.timeWindow ?? 0;
12795
- message.topN = object.topN ?? 0;
13194
+ message.limit = object.limit ?? 0;
12796
13195
  return message;
12797
13196
  },
12798
13197
  };
@@ -14757,11 +15156,11 @@ export const AISessionRef: MessageFns<AISessionRef> = {
14757
15156
 
14758
15157
  function createBaseAIFileFilter(): AIFileFilter {
14759
15158
  return {
14760
- repositoryKey: [],
14761
- ref: [],
14762
- state: [],
14763
- tier: [],
14764
- session: [],
15159
+ repositoryKeys: [],
15160
+ refs: [],
15161
+ states: [],
15162
+ tiers: [],
15163
+ sessions: [],
14765
15164
  minAge: undefined,
14766
15165
  activeAfter: undefined,
14767
15166
  activeBefore: undefined,
@@ -14771,23 +15170,19 @@ function createBaseAIFileFilter(): AIFileFilter {
14771
15170
 
14772
15171
  export const AIFileFilter: MessageFns<AIFileFilter> = {
14773
15172
  encode(message: AIFileFilter, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {
14774
- for (const v of message.repositoryKey) {
15173
+ for (const v of message.repositoryKeys) {
14775
15174
  writer.uint32(10).string(v!);
14776
15175
  }
14777
- for (const v of message.ref) {
15176
+ for (const v of message.refs) {
14778
15177
  writer.uint32(18).string(v!);
14779
15178
  }
14780
- writer.uint32(26).fork();
14781
- for (const v of message.state) {
14782
- writer.int32(v);
15179
+ for (const v of message.states) {
15180
+ writer.uint32(24).int32(v!);
14783
15181
  }
14784
- writer.join();
14785
- writer.uint32(34).fork();
14786
- for (const v of message.tier) {
14787
- writer.int32(v);
15182
+ for (const v of message.tiers) {
15183
+ writer.uint32(32).int32(v!);
14788
15184
  }
14789
- writer.join();
14790
- for (const v of message.session) {
15185
+ for (const v of message.sessions) {
14791
15186
  AISessionRef.encode(v!, writer.uint32(42).fork()).join();
14792
15187
  }
14793
15188
  if (message.minAge !== undefined) {
@@ -14823,7 +15218,7 @@ export const AIFileFilter: MessageFns<AIFileFilter> = {
14823
15218
  break;
14824
15219
  }
14825
15220
 
14826
- message.repositoryKey.push(reader.string());
15221
+ message.repositoryKeys.push(reader.string());
14827
15222
  continue;
14828
15223
  }
14829
15224
  case 2: {
@@ -14831,12 +15226,12 @@ export const AIFileFilter: MessageFns<AIFileFilter> = {
14831
15226
  break;
14832
15227
  }
14833
15228
 
14834
- message.ref.push(reader.string());
15229
+ message.refs.push(reader.string());
14835
15230
  continue;
14836
15231
  }
14837
15232
  case 3: {
14838
15233
  if (tag === 24) {
14839
- message.state.push(reader.int32() as any);
15234
+ message.states.push(reader.int32() as any);
14840
15235
 
14841
15236
  continue;
14842
15237
  }
@@ -14844,7 +15239,7 @@ export const AIFileFilter: MessageFns<AIFileFilter> = {
14844
15239
  if (tag === 26) {
14845
15240
  const end2 = reader.uint32() + reader.pos;
14846
15241
  while (reader.pos < end2) {
14847
- message.state.push(reader.int32() as any);
15242
+ message.states.push(reader.int32() as any);
14848
15243
  }
14849
15244
 
14850
15245
  continue;
@@ -14854,7 +15249,7 @@ export const AIFileFilter: MessageFns<AIFileFilter> = {
14854
15249
  }
14855
15250
  case 4: {
14856
15251
  if (tag === 32) {
14857
- message.tier.push(reader.int32() as any);
15252
+ message.tiers.push(reader.int32() as any);
14858
15253
 
14859
15254
  continue;
14860
15255
  }
@@ -14862,7 +15257,7 @@ export const AIFileFilter: MessageFns<AIFileFilter> = {
14862
15257
  if (tag === 34) {
14863
15258
  const end2 = reader.uint32() + reader.pos;
14864
15259
  while (reader.pos < end2) {
14865
- message.tier.push(reader.int32() as any);
15260
+ message.tiers.push(reader.int32() as any);
14866
15261
  }
14867
15262
 
14868
15263
  continue;
@@ -14875,7 +15270,7 @@ export const AIFileFilter: MessageFns<AIFileFilter> = {
14875
15270
  break;
14876
15271
  }
14877
15272
 
14878
- message.session.push(AISessionRef.decode(reader, reader.uint32()));
15273
+ message.sessions.push(AISessionRef.decode(reader, reader.uint32()));
14879
15274
  continue;
14880
15275
  }
14881
15276
  case 6: {
@@ -14924,16 +15319,16 @@ export const AIFileFilter: MessageFns<AIFileFilter> = {
14924
15319
 
14925
15320
  fromJSON(object: any): AIFileFilter {
14926
15321
  return {
14927
- repositoryKey: globalThis.Array.isArray(object?.repositoryKey)
14928
- ? object.repositoryKey.map((e: any) => globalThis.String(e))
14929
- : globalThis.Array.isArray(object?.repository_key)
14930
- ? object.repository_key.map((e: any) => globalThis.String(e))
15322
+ repositoryKeys: globalThis.Array.isArray(object?.repositoryKeys)
15323
+ ? object.repositoryKeys.map((e: any) => globalThis.String(e))
15324
+ : globalThis.Array.isArray(object?.repository_keys)
15325
+ ? object.repository_keys.map((e: any) => globalThis.String(e))
14931
15326
  : [],
14932
- ref: globalThis.Array.isArray(object?.ref) ? object.ref.map((e: any) => globalThis.String(e)) : [],
14933
- state: globalThis.Array.isArray(object?.state) ? object.state.map((e: any) => aIFileLifecycleFromJSON(e)) : [],
14934
- tier: globalThis.Array.isArray(object?.tier) ? object.tier.map((e: any) => aIFileTierFromJSON(e)) : [],
14935
- session: globalThis.Array.isArray(object?.session)
14936
- ? object.session.map((e: any) => AISessionRef.fromJSON(e))
15327
+ refs: globalThis.Array.isArray(object?.refs) ? object.refs.map((e: any) => globalThis.String(e)) : [],
15328
+ states: globalThis.Array.isArray(object?.states) ? object.states.map((e: any) => aIFileLifecycleFromJSON(e)) : [],
15329
+ tiers: globalThis.Array.isArray(object?.tiers) ? object.tiers.map((e: any) => aIFileTierFromJSON(e)) : [],
15330
+ sessions: globalThis.Array.isArray(object?.sessions)
15331
+ ? object.sessions.map((e: any) => AISessionRef.fromJSON(e))
14937
15332
  : [],
14938
15333
  minAge: isSet(object.minAge)
14939
15334
  ? Duration.fromJSON(object.minAge)
@@ -14960,20 +15355,20 @@ export const AIFileFilter: MessageFns<AIFileFilter> = {
14960
15355
 
14961
15356
  toJSON(message: AIFileFilter): unknown {
14962
15357
  const obj: any = {};
14963
- if (message.repositoryKey?.length) {
14964
- obj.repositoryKey = message.repositoryKey;
15358
+ if (message.repositoryKeys?.length) {
15359
+ obj.repositoryKeys = message.repositoryKeys;
14965
15360
  }
14966
- if (message.ref?.length) {
14967
- obj.ref = message.ref;
15361
+ if (message.refs?.length) {
15362
+ obj.refs = message.refs;
14968
15363
  }
14969
- if (message.state?.length) {
14970
- obj.state = message.state.map((e) => aIFileLifecycleToJSON(e));
15364
+ if (message.states?.length) {
15365
+ obj.states = message.states.map((e) => aIFileLifecycleToJSON(e));
14971
15366
  }
14972
- if (message.tier?.length) {
14973
- obj.tier = message.tier.map((e) => aIFileTierToJSON(e));
15367
+ if (message.tiers?.length) {
15368
+ obj.tiers = message.tiers.map((e) => aIFileTierToJSON(e));
14974
15369
  }
14975
- if (message.session?.length) {
14976
- obj.session = message.session.map((e) => AISessionRef.toJSON(e));
15370
+ if (message.sessions?.length) {
15371
+ obj.sessions = message.sessions.map((e) => AISessionRef.toJSON(e));
14977
15372
  }
14978
15373
  if (message.minAge !== undefined) {
14979
15374
  obj.minAge = Duration.toJSON(message.minAge);
@@ -14995,11 +15390,11 @@ export const AIFileFilter: MessageFns<AIFileFilter> = {
14995
15390
  },
14996
15391
  fromPartial<I extends Exact<DeepPartial<AIFileFilter>, I>>(object: I): AIFileFilter {
14997
15392
  const message = createBaseAIFileFilter();
14998
- message.repositoryKey = object.repositoryKey?.map((e) => e) || [];
14999
- message.ref = object.ref?.map((e) => e) || [];
15000
- message.state = object.state?.map((e) => e) || [];
15001
- message.tier = object.tier?.map((e) => e) || [];
15002
- message.session = object.session?.map((e) => AISessionRef.fromPartial(e)) || [];
15393
+ message.repositoryKeys = object.repositoryKeys?.map((e) => e) || [];
15394
+ message.refs = object.refs?.map((e) => e) || [];
15395
+ message.states = object.states?.map((e) => e) || [];
15396
+ message.tiers = object.tiers?.map((e) => e) || [];
15397
+ message.sessions = object.sessions?.map((e) => AISessionRef.fromPartial(e)) || [];
15003
15398
  message.minAge = (object.minAge !== undefined && object.minAge !== null)
15004
15399
  ? Duration.fromPartial(object.minAge)
15005
15400
  : undefined;
@@ -16704,21 +17099,21 @@ export const ListModelPricesRequest: MessageFns<ListModelPricesRequest> = {
16704
17099
  };
16705
17100
 
16706
17101
  function createBaseAIModelPriceFilter(): AIModelPriceFilter {
16707
- return { source: [], biller: [], modelRaw: [], providerRaw: [] };
17102
+ return { sources: [], billers: [], modelRaws: [], providerRaws: [] };
16708
17103
  }
16709
17104
 
16710
17105
  export const AIModelPriceFilter: MessageFns<AIModelPriceFilter> = {
16711
17106
  encode(message: AIModelPriceFilter, writer: BinaryWriter = new BinaryWriter()): BinaryWriter {
16712
- for (const v of message.source) {
17107
+ for (const v of message.sources) {
16713
17108
  writer.uint32(10).string(v!);
16714
17109
  }
16715
- for (const v of message.biller) {
17110
+ for (const v of message.billers) {
16716
17111
  writer.uint32(18).string(v!);
16717
17112
  }
16718
- for (const v of message.modelRaw) {
17113
+ for (const v of message.modelRaws) {
16719
17114
  writer.uint32(26).string(v!);
16720
17115
  }
16721
- for (const v of message.providerRaw) {
17116
+ for (const v of message.providerRaws) {
16722
17117
  writer.uint32(34).string(v!);
16723
17118
  }
16724
17119
  return writer;
@@ -16742,7 +17137,7 @@ export const AIModelPriceFilter: MessageFns<AIModelPriceFilter> = {
16742
17137
  break;
16743
17138
  }
16744
17139
 
16745
- message.source.push(reader.string());
17140
+ message.sources.push(reader.string());
16746
17141
  continue;
16747
17142
  }
16748
17143
  case 2: {
@@ -16750,7 +17145,7 @@ export const AIModelPriceFilter: MessageFns<AIModelPriceFilter> = {
16750
17145
  break;
16751
17146
  }
16752
17147
 
16753
- message.biller.push(reader.string());
17148
+ message.billers.push(reader.string());
16754
17149
  continue;
16755
17150
  }
16756
17151
  case 3: {
@@ -16758,7 +17153,7 @@ export const AIModelPriceFilter: MessageFns<AIModelPriceFilter> = {
16758
17153
  break;
16759
17154
  }
16760
17155
 
16761
- message.modelRaw.push(reader.string());
17156
+ message.modelRaws.push(reader.string());
16762
17157
  continue;
16763
17158
  }
16764
17159
  case 4: {
@@ -16766,7 +17161,7 @@ export const AIModelPriceFilter: MessageFns<AIModelPriceFilter> = {
16766
17161
  break;
16767
17162
  }
16768
17163
 
16769
- message.providerRaw.push(reader.string());
17164
+ message.providerRaws.push(reader.string());
16770
17165
  continue;
16771
17166
  }
16772
17167
  }
@@ -16783,34 +17178,34 @@ export const AIModelPriceFilter: MessageFns<AIModelPriceFilter> = {
16783
17178
 
16784
17179
  fromJSON(object: any): AIModelPriceFilter {
16785
17180
  return {
16786
- source: globalThis.Array.isArray(object?.source) ? object.source.map((e: any) => globalThis.String(e)) : [],
16787
- biller: globalThis.Array.isArray(object?.biller) ? object.biller.map((e: any) => globalThis.String(e)) : [],
16788
- modelRaw: globalThis.Array.isArray(object?.modelRaw)
16789
- ? object.modelRaw.map((e: any) => globalThis.String(e))
16790
- : globalThis.Array.isArray(object?.model_raw)
16791
- ? object.model_raw.map((e: any) => globalThis.String(e))
17181
+ sources: globalThis.Array.isArray(object?.sources) ? object.sources.map((e: any) => globalThis.String(e)) : [],
17182
+ billers: globalThis.Array.isArray(object?.billers) ? object.billers.map((e: any) => globalThis.String(e)) : [],
17183
+ modelRaws: globalThis.Array.isArray(object?.modelRaws)
17184
+ ? object.modelRaws.map((e: any) => globalThis.String(e))
17185
+ : globalThis.Array.isArray(object?.model_raws)
17186
+ ? object.model_raws.map((e: any) => globalThis.String(e))
16792
17187
  : [],
16793
- providerRaw: globalThis.Array.isArray(object?.providerRaw)
16794
- ? object.providerRaw.map((e: any) => globalThis.String(e))
16795
- : globalThis.Array.isArray(object?.provider_raw)
16796
- ? object.provider_raw.map((e: any) => globalThis.String(e))
17188
+ providerRaws: globalThis.Array.isArray(object?.providerRaws)
17189
+ ? object.providerRaws.map((e: any) => globalThis.String(e))
17190
+ : globalThis.Array.isArray(object?.provider_raws)
17191
+ ? object.provider_raws.map((e: any) => globalThis.String(e))
16797
17192
  : [],
16798
17193
  };
16799
17194
  },
16800
17195
 
16801
17196
  toJSON(message: AIModelPriceFilter): unknown {
16802
17197
  const obj: any = {};
16803
- if (message.source?.length) {
16804
- obj.source = message.source;
17198
+ if (message.sources?.length) {
17199
+ obj.sources = message.sources;
16805
17200
  }
16806
- if (message.biller?.length) {
16807
- obj.biller = message.biller;
17201
+ if (message.billers?.length) {
17202
+ obj.billers = message.billers;
16808
17203
  }
16809
- if (message.modelRaw?.length) {
16810
- obj.modelRaw = message.modelRaw;
17204
+ if (message.modelRaws?.length) {
17205
+ obj.modelRaws = message.modelRaws;
16811
17206
  }
16812
- if (message.providerRaw?.length) {
16813
- obj.providerRaw = message.providerRaw;
17207
+ if (message.providerRaws?.length) {
17208
+ obj.providerRaws = message.providerRaws;
16814
17209
  }
16815
17210
  return obj;
16816
17211
  },
@@ -16820,10 +17215,10 @@ export const AIModelPriceFilter: MessageFns<AIModelPriceFilter> = {
16820
17215
  },
16821
17216
  fromPartial<I extends Exact<DeepPartial<AIModelPriceFilter>, I>>(object: I): AIModelPriceFilter {
16822
17217
  const message = createBaseAIModelPriceFilter();
16823
- message.source = object.source?.map((e) => e) || [];
16824
- message.biller = object.biller?.map((e) => e) || [];
16825
- message.modelRaw = object.modelRaw?.map((e) => e) || [];
16826
- message.providerRaw = object.providerRaw?.map((e) => e) || [];
17218
+ message.sources = object.sources?.map((e) => e) || [];
17219
+ message.billers = object.billers?.map((e) => e) || [];
17220
+ message.modelRaws = object.modelRaws?.map((e) => e) || [];
17221
+ message.providerRaws = object.providerRaws?.map((e) => e) || [];
16827
17222
  return message;
16828
17223
  },
16829
17224
  };
@@ -16963,6 +17358,7 @@ function createBaseListModelPriceHistoryRequest(): ListModelPriceHistoryRequest
16963
17358
  startTime: undefined,
16964
17359
  endTime: undefined,
16965
17360
  pageSize: 0,
17361
+ pageToken: "",
16966
17362
  };
16967
17363
  }
16968
17364
 
@@ -16986,6 +17382,9 @@ export const ListModelPriceHistoryRequest: MessageFns<ListModelPriceHistoryReque
16986
17382
  if (message.pageSize !== 0) {
16987
17383
  writer.uint32(48).int32(message.pageSize);
16988
17384
  }
17385
+ if (message.pageToken !== "") {
17386
+ writer.uint32(58).string(message.pageToken);
17387
+ }
16989
17388
  return writer;
16990
17389
  },
16991
17390
 
@@ -17050,6 +17449,14 @@ export const ListModelPriceHistoryRequest: MessageFns<ListModelPriceHistoryReque
17050
17449
  message.pageSize = reader.int32();
17051
17450
  continue;
17052
17451
  }
17452
+ case 7: {
17453
+ if (tag !== 58) {
17454
+ break;
17455
+ }
17456
+
17457
+ message.pageToken = reader.string();
17458
+ continue;
17459
+ }
17053
17460
  }
17054
17461
  if ((tag & 7) === 4 || tag === 0) {
17055
17462
  break;
@@ -17090,6 +17497,11 @@ export const ListModelPriceHistoryRequest: MessageFns<ListModelPriceHistoryReque
17090
17497
  : isSet(object.page_size)
17091
17498
  ? globalThis.Number(object.page_size)
17092
17499
  : 0,
17500
+ pageToken: isSet(object.pageToken)
17501
+ ? globalThis.String(object.pageToken)
17502
+ : isSet(object.page_token)
17503
+ ? globalThis.String(object.page_token)
17504
+ : "",
17093
17505
  };
17094
17506
  },
17095
17507
 
@@ -17113,6 +17525,9 @@ export const ListModelPriceHistoryRequest: MessageFns<ListModelPriceHistoryReque
17113
17525
  if (message.pageSize !== 0) {
17114
17526
  obj.pageSize = Math.round(message.pageSize);
17115
17527
  }
17528
+ if (message.pageToken !== "") {
17529
+ obj.pageToken = message.pageToken;
17530
+ }
17116
17531
  return obj;
17117
17532
  },
17118
17533
 
@@ -17129,12 +17544,13 @@ export const ListModelPriceHistoryRequest: MessageFns<ListModelPriceHistoryReque
17129
17544
  message.startTime = object.startTime ?? undefined;
17130
17545
  message.endTime = object.endTime ?? undefined;
17131
17546
  message.pageSize = object.pageSize ?? 0;
17547
+ message.pageToken = object.pageToken ?? "";
17132
17548
  return message;
17133
17549
  },
17134
17550
  };
17135
17551
 
17136
17552
  function createBaseListModelPriceHistoryResponse(): ListModelPriceHistoryResponse {
17137
- return { status: undefined, prices: [], truncated: false };
17553
+ return { status: undefined, prices: [], nextPageToken: "" };
17138
17554
  }
17139
17555
 
17140
17556
  export const ListModelPriceHistoryResponse: MessageFns<ListModelPriceHistoryResponse> = {
@@ -17145,8 +17561,8 @@ export const ListModelPriceHistoryResponse: MessageFns<ListModelPriceHistoryResp
17145
17561
  for (const v of message.prices) {
17146
17562
  AIModelPrice.encode(v!, writer.uint32(18).fork()).join();
17147
17563
  }
17148
- if (message.truncated !== false) {
17149
- writer.uint32(24).bool(message.truncated);
17564
+ if (message.nextPageToken !== "") {
17565
+ writer.uint32(26).string(message.nextPageToken);
17150
17566
  }
17151
17567
  return writer;
17152
17568
  },
@@ -17181,11 +17597,11 @@ export const ListModelPriceHistoryResponse: MessageFns<ListModelPriceHistoryResp
17181
17597
  continue;
17182
17598
  }
17183
17599
  case 3: {
17184
- if (tag !== 24) {
17600
+ if (tag !== 26) {
17185
17601
  break;
17186
17602
  }
17187
17603
 
17188
- message.truncated = reader.bool();
17604
+ message.nextPageToken = reader.string();
17189
17605
  continue;
17190
17606
  }
17191
17607
  }
@@ -17204,7 +17620,11 @@ export const ListModelPriceHistoryResponse: MessageFns<ListModelPriceHistoryResp
17204
17620
  return {
17205
17621
  status: isSet(object.status) ? ResponseStatus.fromJSON(object.status) : undefined,
17206
17622
  prices: globalThis.Array.isArray(object?.prices) ? object.prices.map((e: any) => AIModelPrice.fromJSON(e)) : [],
17207
- truncated: isSet(object.truncated) ? globalThis.Boolean(object.truncated) : false,
17623
+ nextPageToken: isSet(object.nextPageToken)
17624
+ ? globalThis.String(object.nextPageToken)
17625
+ : isSet(object.next_page_token)
17626
+ ? globalThis.String(object.next_page_token)
17627
+ : "",
17208
17628
  };
17209
17629
  },
17210
17630
 
@@ -17216,8 +17636,8 @@ export const ListModelPriceHistoryResponse: MessageFns<ListModelPriceHistoryResp
17216
17636
  if (message.prices?.length) {
17217
17637
  obj.prices = message.prices.map((e) => AIModelPrice.toJSON(e));
17218
17638
  }
17219
- if (message.truncated !== false) {
17220
- obj.truncated = message.truncated;
17639
+ if (message.nextPageToken !== "") {
17640
+ obj.nextPageToken = message.nextPageToken;
17221
17641
  }
17222
17642
  return obj;
17223
17643
  },
@@ -17233,7 +17653,7 @@ export const ListModelPriceHistoryResponse: MessageFns<ListModelPriceHistoryResp
17233
17653
  ? ResponseStatus.fromPartial(object.status)
17234
17654
  : undefined;
17235
17655
  message.prices = object.prices?.map((e) => AIModelPrice.fromPartial(e)) || [];
17236
- message.truncated = object.truncated ?? false;
17656
+ message.nextPageToken = object.nextPageToken ?? "";
17237
17657
  return message;
17238
17658
  },
17239
17659
  };
@@ -18689,7 +19109,7 @@ export interface AIGatewayService {
18689
19109
  ListModelPrices(request: ListModelPricesRequest, metadata?: Metadata): Promise<ListModelPricesResponse>;
18690
19110
  /**
18691
19111
  * Every stored observation for the filtered models over a time range, oldest first —
18692
- * the rows ListModelPrices collapses. filter.model_raw is required.
19112
+ * the rows ListModelPrices collapses. filter.model_raws is required.
18693
19113
  */
18694
19114
  ListModelPriceHistory(
18695
19115
  request: ListModelPriceHistoryRequest,