@databricks/sdk-features 0.0.0-dev → 0.1.0-dev.1

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.
@@ -0,0 +1,1141 @@
1
+ import { Temporal } from '@js-temporal/polyfill';
2
+ import { FieldMask } from '@databricks/sdk-core/wkt';
3
+ import { z } from 'zod';
4
+ /**
5
+ * Scalar data types for request-time field definitions.
6
+ * Only flat (non-nested) types are supported.
7
+ */
8
+ export declare enum ScalarDataType {
9
+ SCALAR_DATA_TYPE_UNSPECIFIED = "SCALAR_DATA_TYPE_UNSPECIFIED",
10
+ INTEGER = "INTEGER",
11
+ FLOAT = "FLOAT",
12
+ BOOLEAN = "BOOLEAN",
13
+ STRING = "STRING",
14
+ DOUBLE = "DOUBLE",
15
+ LONG = "LONG",
16
+ TIMESTAMP = "TIMESTAMP",
17
+ DATE = "DATE",
18
+ SHORT = "SHORT",
19
+ BINARY = "BINARY",
20
+ DECIMAL = "DECIMAL"
21
+ }
22
+ /** Deprecated: Use the function-specific messages in AggregationFunction.function_type oneof instead. Kept for backwards compatibility. */
23
+ export declare enum Function_FunctionType {
24
+ FUNCTION_TYPE_UNSPECIFIED = "FUNCTION_TYPE_UNSPECIFIED",
25
+ AVG = "AVG",
26
+ COUNT = "COUNT",
27
+ SUM = "SUM",
28
+ MIN = "MIN",
29
+ MAX = "MAX",
30
+ FIRST = "FIRST",
31
+ LAST = "LAST",
32
+ APPROX_COUNT_DISTINCT = "APPROX_COUNT_DISTINCT",
33
+ APPROX_PERCENTILE = "APPROX_PERCENTILE",
34
+ STDDEV_POP = "STDDEV_POP",
35
+ STDDEV_SAMP = "STDDEV_SAMP",
36
+ VAR_POP = "VAR_POP",
37
+ VAR_SAMP = "VAR_SAMP"
38
+ }
39
+ export declare enum MaterializedFeature_PipelineScheduleState {
40
+ /** Default value, not used. */
41
+ PIPELINE_SCHEDULE_STATE_UNSPECIFIED = "PIPELINE_SCHEDULE_STATE_UNSPECIFIED",
42
+ /** Pipeline was configured to run once then stop. */
43
+ SNAPSHOT = "SNAPSHOT",
44
+ /** Pipeline is actively running and computing features. */
45
+ ACTIVE = "ACTIVE",
46
+ /** Pipeline is paused and not computing features. */
47
+ PAUSED = "PAUSED"
48
+ }
49
+ export declare enum StreamingMode_StreamingModeType {
50
+ /** Default value, not used. */
51
+ STREAMING_MODE_TYPE_UNSPECIFIED = "STREAMING_MODE_TYPE_UNSPECIFIED",
52
+ /**
53
+ * Real-time mode. Ultra-low-latency trigger intended for operational workloads
54
+ * that need responses in milliseconds or sub-second latency.
55
+ */
56
+ STREAMING_MODE_TYPE_RTM = "STREAMING_MODE_TYPE_RTM",
57
+ /**
58
+ * Micro-batch mode in Structured Streaming. Better suited for ETL and analytics
59
+ * workloads where latency is measured in seconds or minutes and cost efficiency
60
+ * matters more.
61
+ */
62
+ STREAMING_MODE_TYPE_MBM = "STREAMING_MODE_TYPE_MBM"
63
+ }
64
+ /** An aggregation function applied over a time window. */
65
+ export interface AggregationFunction {
66
+ /** The type of the aggregation function. */
67
+ operation?: {
68
+ $case: 'avg';
69
+ avg: AvgFunction;
70
+ } | {
71
+ $case: 'countFunction';
72
+ countFunction: CountFunction;
73
+ } | {
74
+ $case: 'sum';
75
+ sum: SumFunction;
76
+ } | {
77
+ $case: 'min';
78
+ min: MinFunction;
79
+ } | {
80
+ $case: 'max';
81
+ max: MaxFunction;
82
+ } | {
83
+ $case: 'first';
84
+ first: FirstFunction;
85
+ } | {
86
+ $case: 'last';
87
+ last: LastFunction;
88
+ } | {
89
+ $case: 'approxCountDistinct';
90
+ approxCountDistinct: ApproxCountDistinctFunction;
91
+ } | {
92
+ $case: 'approxPercentile';
93
+ approxPercentile: ApproxPercentileFunction;
94
+ } | {
95
+ $case: 'stddevPop';
96
+ stddevPop: StddevPopFunction;
97
+ } | {
98
+ $case: 'stddevSamp';
99
+ stddevSamp: StddevSampFunction;
100
+ } | {
101
+ $case: 'varPop';
102
+ varPop: VarPopFunction;
103
+ } | {
104
+ $case: 'varSamp';
105
+ varSamp: VarSampFunction;
106
+ } | undefined;
107
+ /** The time window over which the aggregation is computed. */
108
+ timeWindow?: TimeWindow | undefined;
109
+ }
110
+ /** Computes the approximate count of distinct values. */
111
+ export interface ApproxCountDistinctFunction {
112
+ /** The input column from which the approximate count of distinct values is computed. */
113
+ input?: string | undefined;
114
+ /** The maximum relative standard deviation allowed (default defined by Spark). */
115
+ relativeSd?: number | undefined;
116
+ }
117
+ /** Computes the approximate percentile of values. */
118
+ export interface ApproxPercentileFunction {
119
+ /** The input column from which the approximate percentile is computed. */
120
+ input?: string | undefined;
121
+ /** The percentile value to compute (between 0 and 1). */
122
+ percentile?: number | undefined;
123
+ /** The accuracy parameter (higher is more accurate but slower). */
124
+ accuracy?: bigint | undefined;
125
+ }
126
+ export interface AuthConfig {
127
+ authConfig?: {
128
+ $case: 'ucServiceCredentialName';
129
+ /** Name of the Unity Catalog service credential. This value will be set under the option databricks.serviceCredential */
130
+ ucServiceCredentialName: string;
131
+ } | {
132
+ $case: 'mtlsConfig';
133
+ /** Mutual-TLS authentication. See MtlsConfig. */
134
+ mtlsConfig: MtlsConfig;
135
+ } | undefined;
136
+ }
137
+ /** Computes the average of values. */
138
+ export interface AvgFunction {
139
+ /**
140
+ * The input column from which the average is computed. For Kafka sources, use dot-prefixed path
141
+ * notation (e.g., "value.amount"). For nested fields, the leaf node name is used.
142
+ * TODO(FS-939): Colon-prefixed notation (e.g., "value:amount") is supported for backwards
143
+ * compatibility but is deprecated; migrate to dot notation.
144
+ */
145
+ input?: string | undefined;
146
+ }
147
+ export interface BackfillSource {
148
+ backfillSource?: {
149
+ $case: 'deltaTableSource';
150
+ /**
151
+ * Deprecated: Use delta_table_name instead. Kept for backwards compatibility.
152
+ * The Delta table source containing the historical data to backfill.
153
+ * Only the delta table name is used for backfill, other fields are ignored.
154
+ */
155
+ deltaTableSource: DeltaTableSource;
156
+ } | {
157
+ $case: 'deltaTableName';
158
+ /** The full three-part name (catalog, schema, name) of the Delta table containing the historical data to backfill. */
159
+ deltaTableName: string;
160
+ } | undefined;
161
+ }
162
+ export interface BatchCreateMaterializedFeaturesRequest {
163
+ /** The requests to create materialized features. */
164
+ requests?: CreateMaterializedFeatureRequest[] | undefined;
165
+ }
166
+ export interface BatchCreateMaterializedFeaturesResponse {
167
+ /** The created materialized features with assigned IDs. */
168
+ materializedFeatures?: MaterializedFeature[] | undefined;
169
+ }
170
+ export interface ColumnIdentifier {
171
+ /**
172
+ * String representation of the column name using dot-prefixed path notation. For nested fields, the leaf value is what will be present in materialized tables
173
+ * and expected to match at query time. For example, the leaf node of value.trip_details.location_details.pickup_zip is pickup_zip.
174
+ */
175
+ variantExprPath?: string | undefined;
176
+ }
177
+ /** A ColumnSelection function, equivalent to the LAST() record of an entity over a lifetime ContinuousWindow */
178
+ export interface ColumnSelection {
179
+ /** Column name from source to select as the feature value. */
180
+ column?: string | undefined;
181
+ }
182
+ /** Deprecated: use RollingWindow with `delay` instead. */
183
+ export interface ContinuousWindow {
184
+ /** The duration of the continuous window (must be positive). */
185
+ windowDuration?: Temporal.Duration | undefined;
186
+ /** The offset of the continuous window (must be non-positive). */
187
+ offset?: Temporal.Duration | undefined;
188
+ }
189
+ /** Computes the count of values. */
190
+ export interface CountFunction {
191
+ /**
192
+ * The input column from which the count is computed. For Kafka sources, use dot-prefixed path
193
+ * notation (e.g., "value.amount"). For nested fields, the leaf node name is used.
194
+ * TODO(FS-939): Colon-prefixed notation (e.g., "value:amount") is supported for backwards
195
+ * compatibility but is deprecated; migrate to dot notation.
196
+ */
197
+ input?: string | undefined;
198
+ }
199
+ export interface CreateFeatureRequest {
200
+ /** Feature to create. */
201
+ feature?: Feature | undefined;
202
+ }
203
+ export interface CreateKafkaConfigRequest {
204
+ kafkaConfig?: KafkaConfig | undefined;
205
+ }
206
+ export interface CreateMaterializedFeatureRequest {
207
+ /** The materialized feature to create. */
208
+ materializedFeature?: MaterializedFeature | undefined;
209
+ }
210
+ /** Create a Stream, a governed UC entity representing an external streaming data source. */
211
+ export interface CreateStreamRequest {
212
+ /** The Stream to create. */
213
+ stream?: Stream | undefined;
214
+ }
215
+ /** A cron-based schedule trigger for the materialization pipeline. */
216
+ export interface CronSchedule {
217
+ /** The cron expression defining the schedule (e.g., "0 0 * * *" for daily at midnight). */
218
+ cronExpression?: string | undefined;
219
+ }
220
+ /** Specifies the data source backing a feature. Exactly one source type must be set. */
221
+ export interface DataSource {
222
+ dataSource?: {
223
+ $case: 'deltaTableSource';
224
+ /** A Delta table data source. */
225
+ deltaTableSource: DeltaTableSource;
226
+ } | {
227
+ $case: 'kafkaSource';
228
+ /** A Kafka stream data source. */
229
+ kafkaSource: KafkaSource;
230
+ } | {
231
+ $case: 'requestSource';
232
+ /** A request-time data source. */
233
+ requestSource: RequestSource;
234
+ } | undefined;
235
+ }
236
+ export interface DeleteFeatureRequest {
237
+ /** Name of the feature to delete. */
238
+ fullName?: string | undefined;
239
+ }
240
+ export interface DeleteKafkaConfigRequest {
241
+ /** Name of the Kafka config to delete. */
242
+ name?: string | undefined;
243
+ }
244
+ export interface DeleteMaterializedFeatureRequest {
245
+ /** The ID of the materialized feature to delete. */
246
+ materializedFeatureId?: string | undefined;
247
+ }
248
+ /** Delete a Stream by its full three-part name (catalog.schema.stream). */
249
+ export interface DeleteStreamRequest {
250
+ /** Full three-part name (catalog.schema.stream) of the Stream to delete. */
251
+ name?: string | undefined;
252
+ }
253
+ export interface DeltaTableSource {
254
+ /** The full three-part (catalog, schema, table) name of the Delta table. */
255
+ fullName?: string | undefined;
256
+ /**
257
+ * Deprecated: Use Feature.entity instead. Kept for backwards compatibility.
258
+ * The entity columns of the Delta table.
259
+ */
260
+ entityColumns?: string[] | undefined;
261
+ /**
262
+ * Deprecated: Use Feature.timeseries_column instead. Kept for backwards compatibility.
263
+ * The timeseries column of the Delta table.
264
+ */
265
+ timeseriesColumn?: string | undefined;
266
+ /** Single WHERE clause to filter delta table before applying transformations. Will be row-wise evaluated, so should only include conditionals and projections. */
267
+ filterCondition?: string | undefined;
268
+ /**
269
+ * A single SQL SELECT expression applied after filter_condition.
270
+ * Should contains all the columns needed (eg. "SELECT *, col_a + col_b AS col_c FROM x.y.z WHERE col_a > 0" would have `transformation_sql` "*, col_a + col_b AS col_c")
271
+ * If transformation_sql is not provided, all columns of the delta table are present in the DataSource dataframe.
272
+ */
273
+ transformationSql?: string | undefined;
274
+ /**
275
+ * Schema of the resulting dataframe after transformations, in Spark StructType JSON format (from df.schema.json()).
276
+ * Required if transformation_sql is specified.
277
+ * Example: {"type":"struct","fields":[{"name":"col_a","type":"integer","nullable":true,"metadata":{}},{"name":"col_c","type":"integer","nullable":true,"metadata":{}}]}
278
+ */
279
+ dataframeSchema?: string | undefined;
280
+ }
281
+ /**
282
+ * Direct connection configs for mTLS, as Kafka Connections do not support mTLS yet (XTA-18030).
283
+ * Temporarily used until UC Kafka Connections gain mTLS support.
284
+ */
285
+ export interface DirectMtlsConfig {
286
+ /** A comma-separated list of host:port pairs for the Kafka bootstrap servers. */
287
+ bootstrapServers?: string | undefined;
288
+ /** Mutual-TLS authentication configuration. */
289
+ mtlsConfig?: MtlsConfig | undefined;
290
+ }
291
+ /**
292
+ * Schema definitions provided directly on the Stream, as opposed to referencing a schema registry.
293
+ * In a future milestone, we will support schema registries through a UC Connection.
294
+ */
295
+ export interface DirectSchemas {
296
+ /**
297
+ * Schema for the message payload. For Kafka, this is the value schema.
298
+ * Unless the platform supports another schema (e.g. keys for Kafka), this must be specified.
299
+ */
300
+ payloadSchema?: SchemaConfig | undefined;
301
+ /**
302
+ * Schema for the message key. This is only used for Kafka streams.
303
+ * For Kafka, at least one of payload_schema or key_schema must be specified.
304
+ */
305
+ keySchema?: SchemaConfig | undefined;
306
+ }
307
+ export interface EntityColumn {
308
+ /**
309
+ * The name of the entity column. For Kafka sources, use dot-prefixed path notation to reference
310
+ * fields within the key or value schema (e.g., "value.user_id", "key.partition_key"). For nested
311
+ * fields, the leaf node name (e.g., "user_id" from "value.trip_details.user_id") is what will
312
+ * be present in materialized tables and expected to match at query time.
313
+ * TODO(FS-939): Colon-prefixed notation (e.g., "value:user_id") is supported for backwards
314
+ * compatibility but is deprecated; migrate to dot notation.
315
+ */
316
+ name?: string | undefined;
317
+ }
318
+ export interface Feature {
319
+ /**
320
+ * The full three-part name (catalog, schema, name) of the feature. This is the
321
+ * feature's resource identifier; the catalog_name, schema_name, and name fields
322
+ * below are OUTPUT_ONLY decomposed views of this value.
323
+ */
324
+ fullName?: string | undefined;
325
+ /** The data source of the feature. */
326
+ source?: DataSource | undefined;
327
+ /**
328
+ * Deprecated: Use AggregationFunction.inputs instead. Kept for backwards compatibility.
329
+ * The input columns from which the feature is computed.
330
+ */
331
+ inputs?: string[] | undefined;
332
+ /** The function by which the feature is computed. */
333
+ function?: Function | undefined;
334
+ /**
335
+ * Deprecated: Use Function.aggregation_function.time_window instead. Kept for backwards compatibility.
336
+ * The time window in which the feature is computed.
337
+ */
338
+ timeWindow?: TimeWindow | undefined;
339
+ /** The description of the feature. */
340
+ description?: string | undefined;
341
+ /**
342
+ * Deprecated: Use DeltaTableSource.filter_condition or KafkaSource.filter_condition instead. Kept for backwards compatibility.
343
+ * The filter condition applied to the source data before aggregation.
344
+ */
345
+ filterCondition?: string | undefined;
346
+ /**
347
+ * Lineage context information for this feature.
348
+ * WARNING: This field is primarily intended for internal use by <Databricks> systems and
349
+ * is automatically populated when features are created through <Databricks> notebooks or jobs.
350
+ * Users should not manually set this field as incorrect values may lead to inaccurate lineage tracking or unexpected behavior.
351
+ * This field will be set by feature-engineering client and should be left unset by SDK and terraform users.
352
+ */
353
+ lineageContext?: LineageContext | undefined;
354
+ /** The entity columns for the feature, used as aggregation keys and for query-time lookup. */
355
+ entities?: EntityColumn[] | undefined;
356
+ /** Column recording time, used for point-in-time joins, backfills, and aggregations. */
357
+ timeseriesColumn?: TimeseriesColumn | undefined;
358
+ /** Name of parent catalog. */
359
+ catalogName?: string | undefined;
360
+ /** Name of parent schema relative to its parent catalog. */
361
+ schemaName?: string | undefined;
362
+ /** Name of the feature, extracted from the full three-part name (catalog.schema.name). */
363
+ name?: string | undefined;
364
+ /** Time at which this feature was created. */
365
+ createdAt?: Temporal.Instant | undefined;
366
+ /** Username of the feature creator. */
367
+ createdBy?: string | undefined;
368
+ }
369
+ /**
370
+ * A single field definition within a FlatSchema, specifying the field name and its scalar data type.
371
+ * Does not support nested or complex types (arrays, maps, structs).
372
+ */
373
+ export interface FieldDefinition {
374
+ /** The name of the field. */
375
+ name?: string | undefined;
376
+ /** The scalar data type of the field. */
377
+ dataType?: ScalarDataType | undefined;
378
+ }
379
+ /** Returns the first value. */
380
+ export interface FirstFunction {
381
+ /** The input column from which the first value is returned. */
382
+ input?: string | undefined;
383
+ }
384
+ /**
385
+ * A flat (non-nested) schema for request-time fields, defined as an ordered list of field definitions.
386
+ * This schema only supports scalar types.
387
+ */
388
+ export interface FlatSchema {
389
+ /** The list of fields in this schema. */
390
+ fields?: FieldDefinition[] | undefined;
391
+ }
392
+ export interface Function {
393
+ /**
394
+ * Deprecated: Use the function oneof with AggregationFunction instead. Kept for backwards compatibility.
395
+ * The type of the function.
396
+ */
397
+ functionType?: Function_FunctionType | undefined;
398
+ /**
399
+ * Deprecated: Use the function oneof with AggregationFunction instead. Kept for backwards compatibility.
400
+ * Extra parameters for parameterized functions.
401
+ */
402
+ extraParameters?: Function_ExtraParameter[] | undefined;
403
+ function?: {
404
+ $case: 'aggregationFunction';
405
+ /** An aggregation function applied over a time window. */
406
+ aggregationFunction: AggregationFunction;
407
+ } | {
408
+ $case: 'columnSelection';
409
+ /** Selects the latest value of a single column in a data source */
410
+ columnSelection: ColumnSelection;
411
+ } | undefined;
412
+ }
413
+ /**
414
+ * Deprecated: Use typed fields on function-specific messages (e.g. ApproxPercentileFunction.percentile)
415
+ * or AggregationFunction.ExtraParameter instead. Kept for backwards compatibility.
416
+ */
417
+ export interface Function_ExtraParameter {
418
+ /** The name of the parameter. */
419
+ key?: string | undefined;
420
+ /** The value of the parameter. */
421
+ value?: string | undefined;
422
+ }
423
+ export interface GetFeatureRequest {
424
+ /** Name of the feature to get. */
425
+ fullName?: string | undefined;
426
+ }
427
+ export interface GetKafkaConfigRequest {
428
+ /** Name of the Kafka config to get. */
429
+ name?: string | undefined;
430
+ }
431
+ export interface GetMaterializedFeatureRequest {
432
+ /** The ID of the materialized feature. */
433
+ materializedFeatureId?: string | undefined;
434
+ }
435
+ /** Get a Stream by its full three-part name (catalog.schema.stream). */
436
+ export interface GetStreamRequest {
437
+ /** Full three-part name (catalog.schema.stream) of the Stream to get. */
438
+ name?: string | undefined;
439
+ }
440
+ /**
441
+ * Configuration for the <Databricks>-managed ingestion pipeline.
442
+ * Groups the ingestion destination (required) and optional backfill source.
443
+ */
444
+ export interface IngestionConfig {
445
+ /**
446
+ * Destination for the <Databricks>-managed Delta table that holds an offline copy of the streaming data for querying and training.
447
+ * This table contains both 1) forward-filled data from the Stream and 2) backfilled data from the BackfillSource (if provided).
448
+ * This table is created and managed by <Databricks> and is deleted when the Stream is deleted.
449
+ */
450
+ ingestionDestination?: IngestionDestination | undefined;
451
+ /**
452
+ * A user-provided source for backfilling data. Historical data is used when creating a training set from streaming features linked to this Stream.
453
+ * The backfill data stored in this location will be copied into the ingestion table for offline querying and training.
454
+ * The schema for this source must match exactly that of the key and payload schemas specified for this Stream.
455
+ */
456
+ backfillSource?: BackfillSource | undefined;
457
+ /**
458
+ * Column paths used to identify duplicate rows during ingestion; only one row per
459
+ * distinct combination of these values is kept. Use dot notation for nested fields
460
+ * (e.g. `value.user_id`). Empty list means every column is compared.
461
+ */
462
+ deduplicationColumns?: string[] | undefined;
463
+ /**
464
+ * The ID of the SDP pipeline that continuously copies new events from the streaming source
465
+ * into the ingestion Delta table.
466
+ */
467
+ ingestionPipelineId?: string | undefined;
468
+ /** The ID of the Databricks Job that performs the forward-fill ingestion. */
469
+ ingestionJobId?: bigint | undefined;
470
+ /** The ID of the Databricks Job that performs the historical backfill of the ingestion Delta table. */
471
+ backfillJobId?: bigint | undefined;
472
+ }
473
+ /** Destination for the <Databricks>-managed Delta table that holds an offline copy of the streaming data for querying and training. */
474
+ export interface IngestionDestination {
475
+ ingestionDestination?: {
476
+ $case: 'deltaTableName';
477
+ /** The full three-part name (catalog, schema, name) of the Delta table to be created for ingestion. */
478
+ deltaTableName: string;
479
+ } | undefined;
480
+ }
481
+ export interface JobContext {
482
+ /** The job ID where this API invoked. */
483
+ jobId?: bigint | undefined;
484
+ /** The job run ID where this API was invoked. */
485
+ jobRunId?: bigint | undefined;
486
+ }
487
+ export interface KafkaConfig {
488
+ /**
489
+ * Name that uniquely identifies this Kafka config within the metastore. This will be the identifier used from the Feature object to reference these configs for a feature.
490
+ * Can be distinct from topic name.
491
+ */
492
+ name?: string | undefined;
493
+ /** A comma-separated list of host/port pairs pointing to Kafka cluster. */
494
+ bootstrapServers?: string | undefined;
495
+ /** Options to configure which Kafka topics to pull data from. */
496
+ subscriptionMode?: SubscriptionMode | undefined;
497
+ /** Authentication configuration for connection to topics. */
498
+ authConfig?: AuthConfig | undefined;
499
+ /** Schema configuration for extracting message keys from topics. At least one of key_schema and value_schema must be provided. */
500
+ keySchema?: SchemaConfig | undefined;
501
+ /** Schema configuration for extracting message values from topics. At least one of key_schema and value_schema must be provided. */
502
+ valueSchema?: SchemaConfig | undefined;
503
+ /** Catch-all for miscellaneous options. Keys should be source options or Kafka consumer options (kafka.*) */
504
+ extraOptions?: Record<string, string> | undefined;
505
+ /**
506
+ * A user-provided and managed source for backfilling data. Historical data is used when creating a training set from streaming features linked to this Kafka config.
507
+ * In the future, a separate table will be maintained by <Databricks> for forward filling data.
508
+ * The schema for this source must match exactly that of the key and value schemas specified for this Kafka config.
509
+ */
510
+ backfillSource?: BackfillSource | undefined;
511
+ }
512
+ export interface KafkaConfig_ExtraOptionsEntry {
513
+ key?: string | undefined;
514
+ value?: string | undefined;
515
+ }
516
+ export interface KafkaSource {
517
+ /** Name of the Kafka source, used to identify it. This is used to look up the corresponding KafkaConfig object. Can be distinct from topic name. */
518
+ name?: string | undefined;
519
+ /**
520
+ * Deprecated: Use Feature.entity instead. Kept for backwards compatibility.
521
+ * The entity column identifiers of the Kafka source.
522
+ */
523
+ entityColumnIdentifiers?: ColumnIdentifier[] | undefined;
524
+ /**
525
+ * Deprecated: Use Feature.timeseries_column instead. Kept for backwards compatibility.
526
+ * The timeseries column identifier of the Kafka source.
527
+ */
528
+ timeseriesColumnIdentifier?: ColumnIdentifier | undefined;
529
+ /** The filter condition applied to the source data before aggregation. */
530
+ filterCondition?: string | undefined;
531
+ }
532
+ /** Kafka-specific configuration for a Stream. */
533
+ export interface KafkaStreamConfig {
534
+ /** Options to configure which Kafka topics to pull data from. */
535
+ subscriptionMode?: KafkaSubscriptionMode | undefined;
536
+ /**
537
+ * Miscellaneous source options. Accepted keys are source options or Kafka consumer options (kafka.*),
538
+ * validated against an allow-list at request time.
539
+ * All auth configuration goes through the underlying UC Connection(s) or configs and should not be stored here.
540
+ */
541
+ extraOptions?: Record<string, string> | undefined;
542
+ }
543
+ export interface KafkaStreamConfig_ExtraOptionsEntry {
544
+ key?: string | undefined;
545
+ value?: string | undefined;
546
+ }
547
+ /** Subscription mode for Kafka topic selection, matching standard Spark Structured Streaming options. */
548
+ export interface KafkaSubscriptionMode {
549
+ /** These match the settings from https://spark.apache.org/docs/latest/streaming/structured-streaming-kafka-integration.html */
550
+ subscriptionMode?: {
551
+ $case: 'assign';
552
+ /**
553
+ * A JSON string that contains the specific topic-partitions to consume from.
554
+ * For example, for '{"topicA":[0,1],"topicB":[2,4]}', topicA's 0'th and 1st partitions will be consumed from.
555
+ */
556
+ assign: string;
557
+ } | {
558
+ $case: 'subscribe';
559
+ /** A comma-separated list of Kafka topics to read from. For example, 'topicA,topicB,topicC'. */
560
+ subscribe: string;
561
+ } | {
562
+ $case: 'subscribePattern';
563
+ /** A regular expression matching topics to subscribe to. For example, 'topic.*' will subscribe to all topics starting with 'topic'. */
564
+ subscribePattern: string;
565
+ } | undefined;
566
+ }
567
+ /** Returns the last value. */
568
+ export interface LastFunction {
569
+ /** The input column from which the last value is returned. */
570
+ input?: string | undefined;
571
+ }
572
+ /** Lineage context information for tracking where an API was invoked. This will allow us to track lineage, which currently uses caller entity information for use across the Lineage Client and Observability in Lumberjack. */
573
+ export interface LineageContext {
574
+ /** The notebook ID where this API was invoked. */
575
+ notebookId?: bigint | undefined;
576
+ /** Job context information including job ID and run ID. */
577
+ jobContext?: JobContext | undefined;
578
+ }
579
+ /**
580
+ * Request to list features. Listing is always scoped to a single catalog and schema;
581
+ * catalog_name and schema_name are required.
582
+ */
583
+ export interface ListFeaturesRequest {
584
+ /** Pagination token to go to the next page based on a previous query. */
585
+ pageToken?: string | undefined;
586
+ /** The maximum number of results to return. */
587
+ pageSize?: number | undefined;
588
+ /** Name of parent catalog for features of interest. */
589
+ catalogName?: string | undefined;
590
+ /** Name of parent schema relative to its parent catalog. */
591
+ schemaName?: string | undefined;
592
+ }
593
+ export interface ListFeaturesResponse {
594
+ /** List of features. */
595
+ features?: Feature[] | undefined;
596
+ /** Pagination token to request the next page of results for this query. */
597
+ nextPageToken?: string | undefined;
598
+ }
599
+ export interface ListKafkaConfigsRequest {
600
+ /** Pagination token to go to the next page based on a previous query. */
601
+ pageToken?: string | undefined;
602
+ /** The maximum number of results to return. */
603
+ pageSize?: number | undefined;
604
+ }
605
+ export interface ListKafkaConfigsResponse {
606
+ /** List of Kafka configs. Schemas are not included in the response. */
607
+ kafkaConfigs?: KafkaConfig[] | undefined;
608
+ /** Pagination token to request the next page of results for this query. */
609
+ nextPageToken?: string | undefined;
610
+ }
611
+ export interface ListMaterializedFeaturesRequest {
612
+ /** Filter by feature name. If specified, only materialized features materialized from this feature will be returned. */
613
+ featureName?: string | undefined;
614
+ /** Pagination token to go to the next page based on a previous query. */
615
+ pageToken?: string | undefined;
616
+ /** The maximum number of results to return. Defaults to 100 if not specified. Cannot be greater than 1000. */
617
+ pageSize?: number | undefined;
618
+ }
619
+ export interface ListMaterializedFeaturesResponse {
620
+ /** List of materialized features. */
621
+ materializedFeatures?: MaterializedFeature[] | undefined;
622
+ /** Pagination token to request the next page of results for this query. */
623
+ nextPageToken?: string | undefined;
624
+ }
625
+ /** List Streams under a given parent. */
626
+ export interface ListStreamsRequest {
627
+ /** Two-part name (catalog.schema) of the parent under which to list Streams. */
628
+ parent?: string | undefined;
629
+ /** The maximum number of results to return. */
630
+ pageSize?: number | undefined;
631
+ /** Pagination token to go to the next page based on a previous query. */
632
+ pageToken?: string | undefined;
633
+ }
634
+ /** Response to a ListStreamsRequest. */
635
+ export interface ListStreamsResponse {
636
+ /** List of Streams. */
637
+ streams?: Stream[] | undefined;
638
+ /** Pagination token to request the next page of results for this query. */
639
+ nextPageToken?: string | undefined;
640
+ }
641
+ /** A materialized feature represents a feature that is continuously computed and stored. */
642
+ export interface MaterializedFeature {
643
+ /** Server-assigned unique identifier for the materialized feature. */
644
+ materializedFeatureId?: string | undefined;
645
+ /** The full name of the feature in Unity Catalog. */
646
+ featureName?: string | undefined;
647
+ destination?: {
648
+ $case: 'offlineStoreConfig';
649
+ /** Destination for writing feature values to an offline Delta table. */
650
+ offlineStoreConfig: OfflineStoreConfig;
651
+ } | {
652
+ $case: 'onlineStoreConfig';
653
+ /** Destination for writing feature values to an online Lakebase table. */
654
+ onlineStoreConfig: OnlineStoreConfig;
655
+ } | undefined;
656
+ /** The fully qualified Unity Catalog path to the table containing the materialized feature (Delta table or Lakebase table). Output only. */
657
+ tableName?: string | undefined;
658
+ /** The schedule state of the materialization pipeline. */
659
+ pipelineScheduleState?: MaterializedFeature_PipelineScheduleState | undefined;
660
+ /**
661
+ * The timestamp when the pipeline last ran and updated the materialized feature values.
662
+ * If the pipeline has not run yet, this field will be null.
663
+ */
664
+ lastMaterializationTime?: Temporal.Instant | undefined;
665
+ /** The quartz cron expression that defines the schedule of the materialization pipeline. The schedule is evaluated in the UTC timezone. */
666
+ cronSchedule?: string | undefined;
667
+ /** True if this is an online materialized feature. False if it is an offline materialized feature. */
668
+ isOnline?: boolean | undefined;
669
+ /** The trigger configuration for the materialization pipeline. */
670
+ trigger?: {
671
+ $case: 'cronScheduleTrigger';
672
+ /** A cron-based schedule trigger for the materialization pipeline. */
673
+ cronScheduleTrigger: CronSchedule;
674
+ } | {
675
+ $case: 'tableTrigger';
676
+ /** A trigger that fires when the upstream source table changes. */
677
+ tableTrigger: TableTrigger;
678
+ } | {
679
+ $case: 'streamingMode';
680
+ /**
681
+ * The Structured Streaming trigger mode used for materialization. Real-time mode (RTM) targets
682
+ * sub-second latency for operational workloads; micro-batch mode (MBM) favors cost efficiency
683
+ * for ETL and analytics workloads.
684
+ */
685
+ streamingMode: StreamingMode;
686
+ } | undefined;
687
+ }
688
+ /** Computes the maximum value. */
689
+ export interface MaxFunction {
690
+ /** The input column from which the maximum is computed. */
691
+ input?: string | undefined;
692
+ }
693
+ /** Computes the minimum value. */
694
+ export interface MinFunction {
695
+ /** The input column from which the minimum is computed. */
696
+ input?: string | undefined;
697
+ }
698
+ /**
699
+ * Mutual-TLS (mTLS) authentication configuration. The keystore (client certificate +
700
+ * private key) and truststore (CAs trusted to verify the broker) live as JKS files on
701
+ * Unity Catalog volumes, with their passwords stored in <Databricks> secret scopes. This
702
+ * matches the SSL setup pattern documented at
703
+ * https://docs.databricks.com/en/connect/streaming/kafka/authentication#use-ssl-to-connect-databricks-to-kafka.
704
+ *
705
+ * At materialization time, the generated PySpark code passes the JKS file paths and
706
+ * resolved passwords through to the Kafka SSL options (kafka.ssl.keystore.location,
707
+ * kafka.ssl.keystore.password, kafka.ssl.key.password, kafka.ssl.truststore.location,
708
+ * kafka.ssl.truststore.password). Passwords are resolved on the Spark cluster via
709
+ * dbutils.secrets.get; this message stores only references, never password values.
710
+ */
711
+ export interface MtlsConfig {
712
+ /**
713
+ * Unity Catalog volume path to the JKS keystore file containing the client certificate
714
+ * and private key. e.g. "/Volumes/<catalog>/<schema>/<volume>/client.jks". The
715
+ * materialization compute must have read permission on this volume.
716
+ */
717
+ keystoreLocation?: string | undefined;
718
+ /** Secret-scope reference for the JKS keystore password. */
719
+ keystorePasswordRef?: SecretScopeReference | undefined;
720
+ /**
721
+ * Secret-scope reference for the private key password. Often the same value as the
722
+ * keystore password (keytool's default), but provided as a separate field because
723
+ * Apache Kafka requires it as a distinct option (kafka.ssl.key.password).
724
+ */
725
+ keyPasswordRef?: SecretScopeReference | undefined;
726
+ /**
727
+ * Unity Catalog volume path to the JKS truststore file containing the CA certificate(s)
728
+ * trusted to verify the Kafka broker's server certificate.
729
+ * e.g. "/Volumes/<catalog>/<schema>/<volume>/truststore.jks".
730
+ */
731
+ truststoreLocation?: string | undefined;
732
+ /** Secret-scope reference for the JKS truststore password. */
733
+ truststorePasswordRef?: SecretScopeReference | undefined;
734
+ /**
735
+ * Set to true only when the broker certificate's SAN intentionally does not match
736
+ * the connection endpoint — for example when reaching the cluster through a
737
+ * PrivateLink endpoint whose DNS name is not in the broker certificate. Skipping
738
+ * the hostname check removes a defense against man-in-the-middle attacks; do not
739
+ * enable casually. mTLS client authentication is unaffected by this option.
740
+ *
741
+ * See the Apache Kafka SSL security guide for background on this check:
742
+ * https://kafka.apache.org/42/security/encryption-and-authentication-using-ssl/#host-name-verification
743
+ */
744
+ disableHostnameVerification?: boolean | undefined;
745
+ }
746
+ /** Configuration for offline store destination. */
747
+ export interface OfflineStoreConfig {
748
+ /** The Unity Catalog catalog name. */
749
+ catalogName?: string | undefined;
750
+ /** The Unity Catalog schema name. */
751
+ schemaName?: string | undefined;
752
+ /**
753
+ * Prefix for Unity Catalog table name.
754
+ * The materialized feature will be stored in a table with this prefix and a generated postfix.
755
+ */
756
+ tableNamePrefix?: string | undefined;
757
+ }
758
+ /** Configuration for online store destination. */
759
+ export interface OnlineStoreConfig {
760
+ /**
761
+ * The Unity Catalog catalog name. This name is also used as the Lakebase logical database name.
762
+ * Quoting is handled by the backend where needed, do not pre-quote it.
763
+ */
764
+ catalogName?: string | undefined;
765
+ /**
766
+ * The Unity Catalog schema name. This name is also used as the Lakebase schema name under the database.
767
+ * Quoting is handled by the backend where needed, do not pre-quote it.
768
+ */
769
+ schemaName?: string | undefined;
770
+ /**
771
+ * Prefix for Unity Catalog table name.
772
+ * The materialized feature will be stored in a Lakebase table with this prefix and a generated postfix.
773
+ */
774
+ tableNamePrefix?: string | undefined;
775
+ /** The name of the target online store. */
776
+ onlineStoreName?: string | undefined;
777
+ }
778
+ /** A request-time data source whose value is provided at inference time: offline batch scoring or online serving endpoint */
779
+ export interface RequestSource {
780
+ /** The schema describing the request-time fields. Currently only flat schemas are supported. */
781
+ schema?: {
782
+ $case: 'flatSchema';
783
+ /** A flat schema with scalar-typed fields only. */
784
+ flatSchema: FlatSchema;
785
+ } | undefined;
786
+ }
787
+ /**
788
+ * A rolling time window with an optional delay. This is the SQL-spec-aligned
789
+ * replacement for ContinuousWindow: `delay` is the non-negative counterpart
790
+ * of the legacy non-positive `ContinuousWindow.offset`.
791
+ */
792
+ export interface RollingWindow {
793
+ /** The duration of the rolling window (must be positive). */
794
+ windowDuration?: Temporal.Duration | undefined;
795
+ /**
796
+ * The delay applied to the end of the rolling window (must be non-negative).
797
+ * For example, delay=1d shifts the window end 1 day before the evaluation time.
798
+ */
799
+ delay?: Temporal.Duration | undefined;
800
+ }
801
+ export interface SchemaConfig {
802
+ schema?: {
803
+ $case: 'jsonSchema';
804
+ /** Schema of the JSON object in standard IETF JSON schema format (https://json-schema.org/). */
805
+ jsonSchema: string;
806
+ } | undefined;
807
+ }
808
+ /**
809
+ * Reference to an entry in a <Databricks> secret scope. The referenced value is fetched
810
+ * on the Spark cluster at materialization time via dbutils.secrets.get(scope, key).
811
+ */
812
+ export interface SecretScopeReference {
813
+ /** The <Databricks> secret scope name. */
814
+ scope?: string | undefined;
815
+ /** The key within the scope. */
816
+ key?: string | undefined;
817
+ }
818
+ export interface SlidingWindow {
819
+ /** The duration of the sliding window. */
820
+ windowDuration?: Temporal.Duration | undefined;
821
+ /** The slide duration (interval by which windows advance, must be positive and less than duration). */
822
+ slideDuration?: Temporal.Duration | undefined;
823
+ }
824
+ /** Computes the population standard deviation. */
825
+ export interface StddevPopFunction {
826
+ /**
827
+ * The input column from which the population standard deviation is computed. For Kafka sources,
828
+ * use dot-prefixed path notation (e.g., "value.amount"). For nested fields, the leaf node name is used.
829
+ * TODO(FS-939): Colon-prefixed notation (e.g., "value:amount") is supported for backwards
830
+ * compatibility but is deprecated; migrate to dot notation.
831
+ */
832
+ input?: string | undefined;
833
+ }
834
+ /** Computes the sample standard deviation. */
835
+ export interface StddevSampFunction {
836
+ /** The input column from which the sample standard deviation is computed. */
837
+ input?: string | undefined;
838
+ }
839
+ /**
840
+ * A Stream is a governed UC entity representing an external streaming data source.
841
+ * The source_config oneof determines the streaming platform source (e.g. Kafka, Kinesis, etc.).
842
+ */
843
+ export interface Stream {
844
+ /** Full three-part (catalog.schema.stream) name of the stream. */
845
+ name?: string | undefined;
846
+ /** User-provided description. */
847
+ description?: string | undefined;
848
+ /** Source-specific configuration. Determines the streaming platform source. */
849
+ sourceConfig?: StreamSourceConfig | undefined;
850
+ /** Specifies how to connect and authenticate to the stream platform. */
851
+ connectionConfig?: StreamConnectionConfig | undefined;
852
+ /**
853
+ * Schema definitions for the stream. Currently only direct schemas are supported.
854
+ * In a future milestone, we will support schema registries through a UC Connection.
855
+ */
856
+ schemaConfig?: StreamSchemaConfig | undefined;
857
+ /** Configuration for streaming data ingestion: the managed table storing an offline copy of forward fill data and optional historical backfill. */
858
+ ingestionConfig?: IngestionConfig | undefined;
859
+ /** Time at which this Stream was created. */
860
+ createTime?: Temporal.Instant | undefined;
861
+ /** Username of the Stream creator. */
862
+ createdBy?: string | undefined;
863
+ /** Time at which this Stream was last modified. */
864
+ updateTime?: Temporal.Instant | undefined;
865
+ /** Username of user who last modified the Stream. */
866
+ updatedBy?: string | undefined;
867
+ /**
868
+ * Indicates whether the principal is limited to retrieving metadata for the
869
+ * associated object through the BROWSE privilege when include_browse is enabled in the request.
870
+ */
871
+ browseOnly?: boolean | undefined;
872
+ }
873
+ /** Specifies how to connect and authenticate to the stream platform. */
874
+ export interface StreamConnectionConfig {
875
+ connectionConfig?: {
876
+ $case: 'ucConnectionName';
877
+ /**
878
+ * Name of an existing UC Connection for stream platform access.
879
+ * Must be the correct type for the streaming platform (e.g. a Kafka Connection for a Kafka Stream).
880
+ */
881
+ ucConnectionName: string;
882
+ } | {
883
+ $case: 'directMtlsConfig';
884
+ /**
885
+ * Direct mTLS configuration for stream platform access. This is only used in the short term until UC Kafka Connections support mTLS (XTA-18030).
886
+ * Once UC Kafka Connections support mTLS, this will be deprecated.
887
+ */
888
+ directMtlsConfig: DirectMtlsConfig;
889
+ } | undefined;
890
+ }
891
+ /**
892
+ * Schema definitions for the stream. Currently only direct schemas are supported.
893
+ * In a future milestone, we will support schema registries through a UC Connection.
894
+ */
895
+ export interface StreamSchemaConfig {
896
+ schemaConfig?: {
897
+ $case: 'directSchemas';
898
+ /** Schema definitions provided directly on the Stream. */
899
+ directSchemas: DirectSchemas;
900
+ } | undefined;
901
+ }
902
+ /** Source-specific configuration. Determines the streaming platform source. */
903
+ export interface StreamSourceConfig {
904
+ sourceConfig?: {
905
+ $case: 'kafkaStreamConfig';
906
+ /** Configuration for Apache Kafka streams. */
907
+ kafkaStreamConfig: KafkaStreamConfig;
908
+ } | undefined;
909
+ }
910
+ /** The streaming mode configuration for a streaming materialization pipeline. */
911
+ export interface StreamingMode {
912
+ /** The type of streaming mode used by the materialization pipeline. */
913
+ mode?: StreamingMode_StreamingModeType | undefined;
914
+ }
915
+ /** Deprecated: Use KafkaSubscriptionMode instead. */
916
+ export interface SubscriptionMode {
917
+ /** These match the settings from https://spark.apache.org/docs/latest/streaming/structured-streaming-kafka-integration.html */
918
+ subscriptionMode?: {
919
+ $case: 'assign';
920
+ /**
921
+ * A JSON string that contains the specific topic-partitions to consume from.
922
+ * For example, for '{"topicA":[0,1],"topicB":[2,4]}', topicA's 0'th and 1st partitions will be consumed from.
923
+ */
924
+ assign: string;
925
+ } | {
926
+ $case: 'subscribe';
927
+ /** A comma-separated list of Kafka topics to read from. For example, 'topicA,topicB,topicC'. */
928
+ subscribe: string;
929
+ } | {
930
+ $case: 'subscribePattern';
931
+ /** A regular expression matching topics to subscribe to. For example, 'topic.*' will subscribe to all topics starting with 'topic'. */
932
+ subscribePattern: string;
933
+ } | undefined;
934
+ }
935
+ /** Computes the sum of values. */
936
+ export interface SumFunction {
937
+ /**
938
+ * The input column from which the sum is computed. For Kafka sources, use dot-prefixed path
939
+ * notation (e.g., "value.amount"). For nested fields, the leaf node name is used.
940
+ * TODO(FS-939): Colon-prefixed notation (e.g., "value:amount") is supported for backwards
941
+ * compatibility but is deprecated; migrate to dot notation.
942
+ */
943
+ input?: string | undefined;
944
+ }
945
+ /** A trigger that fires when the upstream source table changes. */
946
+ export interface TableTrigger {
947
+ }
948
+ export interface TimeWindow {
949
+ windowType?: {
950
+ $case: 'continuous';
951
+ continuous: ContinuousWindow;
952
+ } | {
953
+ $case: 'tumbling';
954
+ tumbling: TumblingWindow;
955
+ } | {
956
+ $case: 'sliding';
957
+ sliding: SlidingWindow;
958
+ } | {
959
+ $case: 'rolling';
960
+ rolling: RollingWindow;
961
+ } | undefined;
962
+ }
963
+ export interface TimeseriesColumn {
964
+ /**
965
+ * The name of the timeseries column. For Kafka sources, use dot-prefixed path notation to
966
+ * reference fields within the key or value schema (e.g., "value.event_timestamp"). For nested
967
+ * fields, the leaf node name (e.g., "event_timestamp" from "value.event_details.event_timestamp")
968
+ * is what will be present in materialized tables and expected to match at query time.
969
+ * TODO(FS-939): Colon-prefixed notation (e.g., "value:event_timestamp") is supported for
970
+ * backwards compatibility but is deprecated; migrate to dot notation.
971
+ */
972
+ name?: string | undefined;
973
+ }
974
+ export interface TumblingWindow {
975
+ /** The duration of each tumbling window (non-overlapping, fixed-duration windows). */
976
+ windowDuration?: Temporal.Duration | undefined;
977
+ }
978
+ export interface UpdateFeatureRequest {
979
+ /** Feature to update. */
980
+ feature?: Feature | undefined;
981
+ /** The list of fields to update. */
982
+ updateMask?: FieldMask<Feature> | undefined;
983
+ }
984
+ export interface UpdateKafkaConfigRequest {
985
+ /** The Kafka config to update. */
986
+ kafkaConfig?: KafkaConfig | undefined;
987
+ /** The list of fields to update. */
988
+ updateMask?: FieldMask<KafkaConfig> | undefined;
989
+ }
990
+ export interface UpdateMaterializedFeatureRequest {
991
+ /** The materialized feature to update. */
992
+ materializedFeature?: MaterializedFeature | undefined;
993
+ /**
994
+ * Provide the materialization feature fields which should be updated.
995
+ * Currently, only the pipeline_state field can be updated.
996
+ */
997
+ updateMask?: FieldMask<MaterializedFeature> | undefined;
998
+ }
999
+ /** Update a Stream. Only fields listed in `update_mask` are mutated. */
1000
+ export interface UpdateStreamRequest {
1001
+ /** The Stream to update. */
1002
+ stream?: Stream | undefined;
1003
+ /** The list of fields to update. */
1004
+ updateMask?: FieldMask<Stream> | undefined;
1005
+ }
1006
+ /** Computes the population variance. */
1007
+ export interface VarPopFunction {
1008
+ /** The input column from which the population variance is computed. */
1009
+ input?: string | undefined;
1010
+ }
1011
+ /** Computes the sample variance. */
1012
+ export interface VarSampFunction {
1013
+ /** The input column from which the sample variance is computed. */
1014
+ input?: string | undefined;
1015
+ }
1016
+ export declare const unmarshalAggregationFunctionSchema: z.ZodType<AggregationFunction>;
1017
+ export declare const unmarshalApproxCountDistinctFunctionSchema: z.ZodType<ApproxCountDistinctFunction>;
1018
+ export declare const unmarshalApproxPercentileFunctionSchema: z.ZodType<ApproxPercentileFunction>;
1019
+ export declare const unmarshalAuthConfigSchema: z.ZodType<AuthConfig>;
1020
+ export declare const unmarshalAvgFunctionSchema: z.ZodType<AvgFunction>;
1021
+ export declare const unmarshalBackfillSourceSchema: z.ZodType<BackfillSource>;
1022
+ export declare const unmarshalBatchCreateMaterializedFeaturesResponseSchema: z.ZodType<BatchCreateMaterializedFeaturesResponse>;
1023
+ export declare const unmarshalColumnIdentifierSchema: z.ZodType<ColumnIdentifier>;
1024
+ export declare const unmarshalColumnSelectionSchema: z.ZodType<ColumnSelection>;
1025
+ export declare const unmarshalContinuousWindowSchema: z.ZodType<ContinuousWindow>;
1026
+ export declare const unmarshalCountFunctionSchema: z.ZodType<CountFunction>;
1027
+ export declare const unmarshalCronScheduleSchema: z.ZodType<CronSchedule>;
1028
+ export declare const unmarshalDataSourceSchema: z.ZodType<DataSource>;
1029
+ export declare const unmarshalDeltaTableSourceSchema: z.ZodType<DeltaTableSource>;
1030
+ export declare const unmarshalDirectMtlsConfigSchema: z.ZodType<DirectMtlsConfig>;
1031
+ export declare const unmarshalDirectSchemasSchema: z.ZodType<DirectSchemas>;
1032
+ export declare const unmarshalEntityColumnSchema: z.ZodType<EntityColumn>;
1033
+ export declare const unmarshalFeatureSchema: z.ZodType<Feature>;
1034
+ export declare const unmarshalFieldDefinitionSchema: z.ZodType<FieldDefinition>;
1035
+ export declare const unmarshalFirstFunctionSchema: z.ZodType<FirstFunction>;
1036
+ export declare const unmarshalFlatSchemaSchema: z.ZodType<FlatSchema>;
1037
+ export declare const unmarshalFunctionSchema: z.ZodType<Function>;
1038
+ export declare const unmarshalFunction_ExtraParameterSchema: z.ZodType<Function_ExtraParameter>;
1039
+ export declare const unmarshalIngestionConfigSchema: z.ZodType<IngestionConfig>;
1040
+ export declare const unmarshalIngestionDestinationSchema: z.ZodType<IngestionDestination>;
1041
+ export declare const unmarshalJobContextSchema: z.ZodType<JobContext>;
1042
+ export declare const unmarshalKafkaConfigSchema: z.ZodType<KafkaConfig>;
1043
+ export declare const unmarshalKafkaSourceSchema: z.ZodType<KafkaSource>;
1044
+ export declare const unmarshalKafkaStreamConfigSchema: z.ZodType<KafkaStreamConfig>;
1045
+ export declare const unmarshalKafkaSubscriptionModeSchema: z.ZodType<KafkaSubscriptionMode>;
1046
+ export declare const unmarshalLastFunctionSchema: z.ZodType<LastFunction>;
1047
+ export declare const unmarshalLineageContextSchema: z.ZodType<LineageContext>;
1048
+ export declare const unmarshalListFeaturesResponseSchema: z.ZodType<ListFeaturesResponse>;
1049
+ export declare const unmarshalListKafkaConfigsResponseSchema: z.ZodType<ListKafkaConfigsResponse>;
1050
+ export declare const unmarshalListMaterializedFeaturesResponseSchema: z.ZodType<ListMaterializedFeaturesResponse>;
1051
+ export declare const unmarshalListStreamsResponseSchema: z.ZodType<ListStreamsResponse>;
1052
+ export declare const unmarshalMaterializedFeatureSchema: z.ZodType<MaterializedFeature>;
1053
+ export declare const unmarshalMaxFunctionSchema: z.ZodType<MaxFunction>;
1054
+ export declare const unmarshalMinFunctionSchema: z.ZodType<MinFunction>;
1055
+ export declare const unmarshalMtlsConfigSchema: z.ZodType<MtlsConfig>;
1056
+ export declare const unmarshalOfflineStoreConfigSchema: z.ZodType<OfflineStoreConfig>;
1057
+ export declare const unmarshalOnlineStoreConfigSchema: z.ZodType<OnlineStoreConfig>;
1058
+ export declare const unmarshalRequestSourceSchema: z.ZodType<RequestSource>;
1059
+ export declare const unmarshalRollingWindowSchema: z.ZodType<RollingWindow>;
1060
+ export declare const unmarshalSchemaConfigSchema: z.ZodType<SchemaConfig>;
1061
+ export declare const unmarshalSecretScopeReferenceSchema: z.ZodType<SecretScopeReference>;
1062
+ export declare const unmarshalSlidingWindowSchema: z.ZodType<SlidingWindow>;
1063
+ export declare const unmarshalStddevPopFunctionSchema: z.ZodType<StddevPopFunction>;
1064
+ export declare const unmarshalStddevSampFunctionSchema: z.ZodType<StddevSampFunction>;
1065
+ export declare const unmarshalStreamSchema: z.ZodType<Stream>;
1066
+ export declare const unmarshalStreamConnectionConfigSchema: z.ZodType<StreamConnectionConfig>;
1067
+ export declare const unmarshalStreamSchemaConfigSchema: z.ZodType<StreamSchemaConfig>;
1068
+ export declare const unmarshalStreamSourceConfigSchema: z.ZodType<StreamSourceConfig>;
1069
+ export declare const unmarshalStreamingModeSchema: z.ZodType<StreamingMode>;
1070
+ export declare const unmarshalSubscriptionModeSchema: z.ZodType<SubscriptionMode>;
1071
+ export declare const unmarshalSumFunctionSchema: z.ZodType<SumFunction>;
1072
+ export declare const unmarshalTableTriggerSchema: z.ZodType<TableTrigger>;
1073
+ export declare const unmarshalTimeWindowSchema: z.ZodType<TimeWindow>;
1074
+ export declare const unmarshalTimeseriesColumnSchema: z.ZodType<TimeseriesColumn>;
1075
+ export declare const unmarshalTumblingWindowSchema: z.ZodType<TumblingWindow>;
1076
+ export declare const unmarshalVarPopFunctionSchema: z.ZodType<VarPopFunction>;
1077
+ export declare const unmarshalVarSampFunctionSchema: z.ZodType<VarSampFunction>;
1078
+ export declare const marshalAggregationFunctionSchema: z.ZodType;
1079
+ export declare const marshalApproxCountDistinctFunctionSchema: z.ZodType;
1080
+ export declare const marshalApproxPercentileFunctionSchema: z.ZodType;
1081
+ export declare const marshalAuthConfigSchema: z.ZodType;
1082
+ export declare const marshalAvgFunctionSchema: z.ZodType;
1083
+ export declare const marshalBackfillSourceSchema: z.ZodType;
1084
+ export declare const marshalBatchCreateMaterializedFeaturesRequestSchema: z.ZodType;
1085
+ export declare const marshalColumnIdentifierSchema: z.ZodType;
1086
+ export declare const marshalColumnSelectionSchema: z.ZodType;
1087
+ export declare const marshalContinuousWindowSchema: z.ZodType;
1088
+ export declare const marshalCountFunctionSchema: z.ZodType;
1089
+ export declare const marshalCreateMaterializedFeatureRequestSchema: z.ZodType;
1090
+ export declare const marshalCronScheduleSchema: z.ZodType;
1091
+ export declare const marshalDataSourceSchema: z.ZodType;
1092
+ export declare const marshalDeltaTableSourceSchema: z.ZodType;
1093
+ export declare const marshalDirectMtlsConfigSchema: z.ZodType;
1094
+ export declare const marshalDirectSchemasSchema: z.ZodType;
1095
+ export declare const marshalEntityColumnSchema: z.ZodType;
1096
+ export declare const marshalFeatureSchema: z.ZodType;
1097
+ export declare const marshalFieldDefinitionSchema: z.ZodType;
1098
+ export declare const marshalFirstFunctionSchema: z.ZodType;
1099
+ export declare const marshalFlatSchemaSchema: z.ZodType;
1100
+ export declare const marshalFunctionSchema: z.ZodType;
1101
+ export declare const marshalFunction_ExtraParameterSchema: z.ZodType;
1102
+ export declare const marshalIngestionConfigSchema: z.ZodType;
1103
+ export declare const marshalIngestionDestinationSchema: z.ZodType;
1104
+ export declare const marshalJobContextSchema: z.ZodType;
1105
+ export declare const marshalKafkaConfigSchema: z.ZodType;
1106
+ export declare const marshalKafkaSourceSchema: z.ZodType;
1107
+ export declare const marshalKafkaStreamConfigSchema: z.ZodType;
1108
+ export declare const marshalKafkaSubscriptionModeSchema: z.ZodType;
1109
+ export declare const marshalLastFunctionSchema: z.ZodType;
1110
+ export declare const marshalLineageContextSchema: z.ZodType;
1111
+ export declare const marshalMaterializedFeatureSchema: z.ZodType;
1112
+ export declare const marshalMaxFunctionSchema: z.ZodType;
1113
+ export declare const marshalMinFunctionSchema: z.ZodType;
1114
+ export declare const marshalMtlsConfigSchema: z.ZodType;
1115
+ export declare const marshalOfflineStoreConfigSchema: z.ZodType;
1116
+ export declare const marshalOnlineStoreConfigSchema: z.ZodType;
1117
+ export declare const marshalRequestSourceSchema: z.ZodType;
1118
+ export declare const marshalRollingWindowSchema: z.ZodType;
1119
+ export declare const marshalSchemaConfigSchema: z.ZodType;
1120
+ export declare const marshalSecretScopeReferenceSchema: z.ZodType;
1121
+ export declare const marshalSlidingWindowSchema: z.ZodType;
1122
+ export declare const marshalStddevPopFunctionSchema: z.ZodType;
1123
+ export declare const marshalStddevSampFunctionSchema: z.ZodType;
1124
+ export declare const marshalStreamSchema: z.ZodType;
1125
+ export declare const marshalStreamConnectionConfigSchema: z.ZodType;
1126
+ export declare const marshalStreamSchemaConfigSchema: z.ZodType;
1127
+ export declare const marshalStreamSourceConfigSchema: z.ZodType;
1128
+ export declare const marshalStreamingModeSchema: z.ZodType;
1129
+ export declare const marshalSubscriptionModeSchema: z.ZodType;
1130
+ export declare const marshalSumFunctionSchema: z.ZodType;
1131
+ export declare const marshalTableTriggerSchema: z.ZodType;
1132
+ export declare const marshalTimeWindowSchema: z.ZodType;
1133
+ export declare const marshalTimeseriesColumnSchema: z.ZodType;
1134
+ export declare const marshalTumblingWindowSchema: z.ZodType;
1135
+ export declare const marshalVarPopFunctionSchema: z.ZodType;
1136
+ export declare const marshalVarSampFunctionSchema: z.ZodType;
1137
+ export declare function featureFieldMask(...paths: string[]): FieldMask<Feature>;
1138
+ export declare function kafkaConfigFieldMask(...paths: string[]): FieldMask<KafkaConfig>;
1139
+ export declare function materializedFeatureFieldMask(...paths: string[]): FieldMask<MaterializedFeature>;
1140
+ export declare function streamFieldMask(...paths: string[]): FieldMask<Stream>;
1141
+ //# sourceMappingURL=model.d.ts.map