connectbase-client 0.12.2 → 0.13.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.
package/dist/index.d.ts CHANGED
@@ -1,6 +1,13 @@
1
+ interface ApiErrorDetail {
2
+ code: string;
3
+ message: string;
4
+ details?: unknown;
5
+ }
1
6
  declare class ApiError extends Error {
2
7
  statusCode: number;
3
- constructor(statusCode: number, message: string);
8
+ code: string | undefined;
9
+ details: unknown | undefined;
10
+ constructor(statusCode: number, message: string, code?: string, details?: unknown);
4
11
  }
5
12
  declare class AuthError extends Error {
6
13
  constructor(message: string);
@@ -120,6 +127,10 @@ interface MemberInfoResponse {
120
127
  nickname: string;
121
128
  is_active: boolean;
122
129
  custom_data: Record<string, any>;
130
+ /** 멤버 이메일 (EMAIL identity 에서 추출, 없으면 빈 문자열) */
131
+ email?: string;
132
+ /** 멤버 역할 — RLS 규칙에서 `auth.role` 로 참조 (예: "admin", "moderator") */
133
+ role?: string;
123
134
  }
124
135
  /** 앱 멤버 custom_data 수정 요청 */
125
136
  interface UpdateCustomDataRequest {
@@ -249,26 +260,51 @@ declare class AuthAPI {
249
260
  private storeGuestMemberTokens;
250
261
  }
251
262
 
252
- type DataType = 'string' | 'number' | 'boolean' | 'date' | 'object' | 'array';
263
+ /**
264
+ * 서버(data-server `ent/schema/table.go` — `ValidSchemaTypes`) 가 허용하는 컬럼 타입 목록.
265
+ * - `string` / `number` / `int` : 문자열 / 숫자(float) / 정수
266
+ * - `bool` : 참/거짓 (JS 의 `boolean` 이 아니라 `bool` 입니다)
267
+ * - `uuid` : UUID 문자열
268
+ * - `date` : ISO-8601 날짜/시간
269
+ * - `object` / `array` : 중첩 JSON
270
+ */
271
+ type DataType = 'string' | 'int' | 'number' | 'bool' | 'uuid' | 'date' | 'object' | 'array';
272
+ /**
273
+ * 컬럼 정보 (Table.schema 맵에서 합성된 객체).
274
+ *
275
+ * 서버는 컬럼을 별도 레코드로 저장하지 않으므로 `id` 는 컬럼 이름과 동일하며,
276
+ * `order` 는 SDK 가 맵 순서대로 부여한 인덱스입니다. `created_at` 은 테이블의
277
+ * `created_at` 으로 대체됩니다.
278
+ */
253
279
  interface ColumnSchema {
280
+ /** 컬럼 이름과 동일 (서버 별도 ID 없음) */
254
281
  id: string;
255
282
  name: string;
256
283
  data_type: DataType;
257
284
  is_required: boolean;
258
- default_value?: string;
259
- validation_rule?: string;
260
- order: number;
285
+ default_value?: unknown;
261
286
  description?: string;
287
+ encrypted?: boolean;
288
+ /** SDK 가 맵 순서대로 부여한 인덱스 */
289
+ order: number;
290
+ /** 테이블의 `created_at` (컬럼 개별 타임스탬프는 없음) */
262
291
  created_at: string;
292
+ /**
293
+ * @deprecated 서버가 지원하지 않습니다.
294
+ */
295
+ validation_rule?: string;
296
+ /**
297
+ * @deprecated 컬럼 개별 타임스탬프가 없습니다.
298
+ */
263
299
  updated_at?: string;
264
300
  }
265
301
  interface CreateColumnRequest {
266
302
  name: string;
267
303
  data_type: DataType;
268
- is_required: boolean;
269
- default_value?: string;
270
- validation_rule?: string;
271
- order: number;
304
+ /** 필수 필드 여부 (기본 `false`) */
305
+ is_required?: boolean;
306
+ /** 기본값 (서버는 임의 타입을 허용하므로 `unknown`) */
307
+ default_value?: unknown;
272
308
  description?: string;
273
309
  /**
274
310
  * 필드 레벨 암호화 활성화 여부.
@@ -277,26 +313,172 @@ interface CreateColumnRequest {
277
313
  * 서버에 SECRET_ENCRYPTION_KEY가 설정되어 있어야 합니다.
278
314
  */
279
315
  encrypted?: boolean;
316
+ /**
317
+ * @deprecated 서버가 무시합니다. 컬럼 순서는 서버가 자동 관리합니다.
318
+ */
319
+ order?: number;
320
+ /**
321
+ * @deprecated 서버가 해당 필드를 저장하지 않습니다.
322
+ */
323
+ validation_rule?: string;
280
324
  }
281
325
  interface UpdateColumnRequest {
282
- name?: string;
283
326
  data_type?: DataType;
284
327
  is_required?: boolean;
285
- default_value?: string;
286
- validation_rule?: string;
287
- order?: number;
328
+ default_value?: unknown;
288
329
  description?: string;
330
+ encrypted?: boolean;
331
+ /**
332
+ * @deprecated 서버가 컬럼 이름 변경을 지원하지 않습니다. 변경하려면
333
+ * 삭제 후 재생성하거나 data-server 의 rename 엔드포인트를 사용하세요.
334
+ */
335
+ name?: string;
336
+ /**
337
+ * @deprecated 서버가 무시합니다.
338
+ */
339
+ order?: number;
340
+ /**
341
+ * @deprecated 서버가 해당 필드를 저장하지 않습니다.
342
+ */
343
+ validation_rule?: string;
289
344
  }
345
+ /**
346
+ * 서버(data-server `ent/schema/table.go` 의 `Table`) 가 반환하는 테이블 레코드.
347
+ * 필드 이름은 Go ent 모델과 일치합니다.
348
+ */
290
349
  interface TableSchema {
291
350
  id: string;
292
- name: string;
293
- description?: string;
294
- columns: ColumnSchema[];
351
+ app_id: string;
352
+ /** 테이블 이름 (ent 필드: `title`) */
353
+ title: string;
354
+ /** 평면 스키마 맵. 컬럼 객체 배열로 변환하려면 `getColumns()` 사용. */
355
+ schema: TableSchemaDefinition;
356
+ /** 검증 스키마 (table-level). 설정되어 있으면 데이터 insert/update 시 평가됨. */
357
+ validation_schema?: ValidationSchema;
358
+ access_level: TableAccessLevel;
359
+ is_active: boolean;
295
360
  created_at: string;
296
- updated_at?: string;
361
+ updated_at: string;
362
+ }
363
+ /**
364
+ * 컬럼 정의. 서버는 두 가지 형식 중 하나로 저장합니다:
365
+ * - 플랫: 타입 문자열만 (`'string'`, `'int'` 등)
366
+ * - 중첩: 타입 + 추가 속성 객체 (`{type, required, default, description, encrypted}`)
367
+ *
368
+ * 클라이언트에서 `createTable` 시에는 플랫 형태가 권장되며, 추가 속성은
369
+ * `createColumn` 을 사용하거나 중첩 객체로 직접 지정할 수 있습니다.
370
+ */
371
+ type TableColumnDef = DataType | {
372
+ type: DataType;
373
+ required?: boolean;
374
+ default?: unknown;
375
+ description?: string;
376
+ encrypted?: boolean;
377
+ };
378
+ /**
379
+ * 테이블 스키마 정의.
380
+ * 키는 컬럼 이름, 값은 타입 문자열 또는 중첩 컬럼 객체입니다.
381
+ * `$required` 는 특수 키로, 필수 컬럼 이름의 배열을 받습니다.
382
+ *
383
+ * @example
384
+ * ```ts
385
+ * // 플랫 형태
386
+ * { email: 'string', age: 'int', $required: ['email'] }
387
+ *
388
+ * // 중첩 형태 (필드별 옵션)
389
+ * { email: { type: 'string', required: true, encrypted: true } }
390
+ * ```
391
+ */
392
+ interface TableSchemaDefinition {
393
+ /** 필수 컬럼 이름 목록 (서버 hook 이 `$required` 키로 해석) */
394
+ $required?: string[];
395
+ /** 컬럼명 → 컬럼 정의. `$required` 키는 예외적으로 `string[]` */
396
+ [columnName: string]: TableColumnDef | string[] | undefined;
397
+ }
398
+ /** 테이블 접근 수준 */
399
+ type TableAccessLevel = 'Creator' | 'Public' | 'AppMember';
400
+ /** 단일 필드의 검증 규칙 */
401
+ interface ValidationSchemaField {
402
+ /** 데이터 타입 */
403
+ type: DataType;
404
+ /** 필수 여부 */
405
+ required?: boolean;
406
+ /** 기본값 */
407
+ default?: unknown;
408
+ /** 숫자 최소값 */
409
+ min?: number;
410
+ /** 숫자 최대값 */
411
+ max?: number;
412
+ /** 문자열 최소 길이 */
413
+ minLength?: number;
414
+ /** 문자열 최대 길이 */
415
+ maxLength?: number;
416
+ /** 정규식 패턴 (Go regexp 호환) */
417
+ pattern?: string;
418
+ /** 허용 값 목록 */
419
+ enum?: unknown[];
420
+ /** 배열 아이템 스키마 */
421
+ items?: ValidationSchemaField;
422
+ /** object 의 속성 스키마 */
423
+ properties?: Record<string, ValidationSchemaField>;
424
+ /** 수정 불가 (immutable) */
425
+ immutable?: boolean;
426
+ /** 유니크 제약 */
427
+ unique?: boolean;
428
+ /** 새니타이징 ('html', 'xss', 'trim') */
429
+ sanitize?: string;
430
+ /** 자동 계산 표현식 */
431
+ computed?: string;
432
+ /** 상태 전이 규칙: 현재상태 → 허용되는 다음 상태들 */
433
+ transitions?: Record<string, string[]>;
434
+ }
435
+ /** 상태 전이 규칙 (객체 단위 — 필드 + 전이 맵) */
436
+ interface ValidationStateTransitions {
437
+ field: string;
438
+ transitions: Record<string, string[]>;
439
+ }
440
+ /**
441
+ * 테이블 검증 스키마 (table-level).
442
+ * 데이터 insert/update 시 자동으로 평가됩니다.
443
+ *
444
+ * @example
445
+ * ```ts
446
+ * {
447
+ * fields: {
448
+ * email: { type: 'string', pattern: '^.+@.+$', required: true },
449
+ * age: { type: 'int', min: 0, max: 150 }
450
+ * },
451
+ * required: ['email'],
452
+ * immutable: ['email']
453
+ * }
454
+ * ```
455
+ */
456
+ interface ValidationSchema {
457
+ fields: Record<string, ValidationSchemaField>;
458
+ required?: string[];
459
+ unique?: string[];
460
+ immutable?: string[];
461
+ computed?: Record<string, string>;
462
+ transitions?: Record<string, ValidationStateTransitions>;
297
463
  }
298
464
  interface CreateTableRequest {
465
+ /** 테이블 이름 (서버는 내부적으로 `title` 로 저장) */
299
466
  name: string;
467
+ /**
468
+ * 초기 컬럼 스키마 (선택).
469
+ * 생략하면 컬럼이 없는 빈 테이블로 생성되며, 이후 `addColumn()` 으로 추가할 수 있습니다.
470
+ */
471
+ schema?: TableSchemaDefinition;
472
+ /**
473
+ * 접근 수준 (선택, 기본값 `'Creator'`).
474
+ * - `Creator`: 테이블 생성자만 전체 권한
475
+ * - `Public`: 누구나 읽기/쓰기
476
+ * - `AppMember`: 앱 멤버만 읽기/쓰기
477
+ */
478
+ accessLevel?: TableAccessLevel;
479
+ /**
480
+ * @deprecated 서버에 저장되지 않습니다. 필드는 backward-compat 을 위해 남아있으며 SDK 가 서버로 전송하지 않습니다.
481
+ */
300
482
  description?: string;
301
483
  }
302
484
  interface DataItem {
@@ -901,7 +1083,12 @@ declare class DatabaseAPI {
901
1083
  private activeSubscriptions;
902
1084
  constructor(http: HttpClient);
903
1085
  /**
904
- * API Key 인증 시 /v1/public 접두사 반환
1086
+ * Database 공개 API 접두사.
1087
+ *
1088
+ * 서버의 테이블/컬럼/데이터 CRUD 는 모두 `/v1/public/*` 경로에서만 제공되며
1089
+ * (core-server → data-server 프록시), JWT 기반 `/v1/*` 경로는 존재하지 않습니다.
1090
+ * 따라서 항상 `/v1/public` 을 사용합니다. 인증은 `X-Public-Key` 헤더에
1091
+ * `publicKey` (`cb_pk_*`) 를 실어 서버가 검증합니다.
905
1092
  */
906
1093
  private getPublicPrefix;
907
1094
  /**
@@ -913,11 +1100,20 @@ declare class DatabaseAPI {
913
1100
  */
914
1101
  getTable(tableId: string): Promise<TableSchema>;
915
1102
  /**
916
- * 테이블 생성
1103
+ * 테이블 생성.
1104
+ *
1105
+ * 서버 DTO (`{title, schema, access_level}`) 로 변환하여 전송합니다.
1106
+ * `schema` 가 비어있으면 요청 본문에서 키 자체를 생략하여 빈 테이블을
1107
+ * 생성합니다. (서버는 explicit 빈 맵을 거부)
1108
+ *
1109
+ * 서버는 `{message}` 만 돌려주므로 반환 타입은 `void` 입니다.
1110
+ * 생성된 테이블 메타데이터가 필요하면 이어서 `getTables()` 로 조회하세요.
917
1111
  */
918
- createTable(data: CreateTableRequest): Promise<TableSchema>;
1112
+ createTable(data: CreateTableRequest): Promise<void>;
919
1113
  /**
920
- * 테이블 수정
1114
+ * 테이블 수정.
1115
+ *
1116
+ * `name` 은 서버의 `title` 로, `accessLevel` 은 `access_level` 로 매핑됩니다.
921
1117
  */
922
1118
  updateTable(tableId: string, data: Partial<CreateTableRequest>): Promise<void>;
923
1119
  /**
@@ -925,17 +1121,67 @@ declare class DatabaseAPI {
925
1121
  */
926
1122
  deleteTable(tableId: string): Promise<void>;
927
1123
  /**
928
- * 컬럼 목록 조회 (Table.schema에서 추출)
1124
+ * 테이블 검증 스키마 조회.
1125
+ *
1126
+ * 검증 스키마가 설정되어 있지 않으면 `null` 을 반환합니다.
1127
+ * Public Key 인증으로 호출 가능 (조회 권한).
1128
+ */
1129
+ getValidationSchema(tableId: string): Promise<ValidationSchema | null>;
1130
+ /**
1131
+ * 테이블 검증 스키마 설정/교체.
1132
+ *
1133
+ * **권한**: 콘솔 (앱 소유자 JWT) 전용. Public Key 로는 설정 불가.
1134
+ * SDK 에서는 `accessToken` 이 설정되어 있어야 하며, 콘솔에서 사용하는 패턴입니다.
1135
+ *
1136
+ * 빈 fields 는 거부됩니다. 검증 스키마를 제거하려면 `deleteValidationSchema` 사용.
1137
+ *
1138
+ * @example
1139
+ * ```ts
1140
+ * await cb.database.setValidationSchema(tableId, {
1141
+ * fields: {
1142
+ * email: { type: 'string', pattern: '^.+@.+$', required: true },
1143
+ * age: { type: 'int', min: 0, max: 150 }
1144
+ * },
1145
+ * required: ['email'],
1146
+ * immutable: ['email']
1147
+ * })
1148
+ * ```
1149
+ */
1150
+ setValidationSchema(tableId: string, schema: ValidationSchema): Promise<void>;
1151
+ /**
1152
+ * 테이블 검증 스키마 제거 (schemaless 모드로 복귀).
1153
+ *
1154
+ * **권한**: 콘솔 (앱 소유자 JWT) 전용.
1155
+ */
1156
+ deleteValidationSchema(tableId: string): Promise<void>;
1157
+ /**
1158
+ * appId 가 설정되어 있어야 콘솔 경로를 호출할 수 있습니다 (validation_schema set/delete).
1159
+ */
1160
+ private requireAppId;
1161
+ /**
1162
+ * 컬럼 목록 조회 (`Table.schema` 맵을 컬럼 객체 배열로 변환).
1163
+ *
1164
+ * 서버는 컬럼을 다음 두 가지 중 하나로 저장합니다:
1165
+ * - 플랫: `"email": "string"` (추가 속성이 없는 경우)
1166
+ * - 중첩: `"email": { "type": "string", "required": true, ... }` (추가 속성이 있는 경우)
1167
+ *
1168
+ * `$required` 키는 별도 배열로 필수 컬럼을 지정할 수 있으며, 중첩 객체의
1169
+ * `required: true` 와 병합되어 판정됩니다.
929
1170
  */
930
1171
  getColumns(tableId: string): Promise<ColumnSchema[]>;
931
1172
  /**
932
- * 컬럼 생성
1173
+ * 컬럼 생성.
1174
+ *
1175
+ * 서버는 `{message}` 만 돌려주므로 반환 타입은 `void` 입니다.
1176
+ * 생성 결과 컬럼을 얻으려면 이어서 `getColumns(tableId)` 로 조회하세요.
933
1177
  */
934
- createColumn(tableId: string, data: CreateColumnRequest): Promise<ColumnSchema>;
1178
+ createColumn(tableId: string, data: CreateColumnRequest): Promise<void>;
935
1179
  /**
936
- * 컬럼 수정
1180
+ * 컬럼 수정.
1181
+ *
1182
+ * 서버는 `{message}` 만 돌려주므로 반환 타입은 `void` 입니다.
937
1183
  */
938
- updateColumn(tableId: string, columnName: string, data: UpdateColumnRequest): Promise<ColumnSchema>;
1184
+ updateColumn(tableId: string, columnName: string, data: UpdateColumnRequest): Promise<void>;
939
1185
  /**
940
1186
  * 컬럼 삭제
941
1187
  */
@@ -953,9 +1199,19 @@ declare class DatabaseAPI {
953
1199
  */
954
1200
  getDataById(tableId: string, dataId: string): Promise<DataItem>;
955
1201
  /**
956
- * 데이터 생성
1202
+ * 데이터 생성.
1203
+ *
1204
+ * `tableIdOrName` 은 테이블 UUID 또는 이름. UUID 형식이면 기존 경로
1205
+ * (`/tables/:tableId/data`), 그렇지 않으면 이름 기반 경로
1206
+ * (`/tables/name/:tableName/data`) 를 사용합니다.
1207
+ *
1208
+ * `options.autoCreate: true` 시 테이블이 없으면 빈 schemaless 테이블을
1209
+ * 자동으로 생성한 뒤 insert. opt-in 이며 프로토타입/AI 자동화 워크플로에
1210
+ * 권장합니다. production 앱은 명시적 `createTable` 호출 권장.
957
1211
  */
958
- createData(tableId: string, data: CreateDataRequest): Promise<DataItem>;
1212
+ createData(tableIdOrName: string, data: CreateDataRequest, options?: {
1213
+ autoCreate?: boolean;
1214
+ }): Promise<DataItem>;
959
1215
  /**
960
1216
  * 데이터 수정 (부분 업데이트)
961
1217
  * 제공된 필드만 수정되고, 기존 필드는 유지됩니다.
@@ -6001,8 +6257,14 @@ interface ConnectBaseConfig {
6001
6257
  */
6002
6258
  publicKey?: string;
6003
6259
  /**
6004
- * Secret Key (cb_sk_* 형식, 사용자 프로필에서 발급)
6005
- * 서버 환경에서만 사용. 전체 권한 — 절대 노출 금지.
6260
+ * User Secret Key (`cb_sk_*` 형식, 사용자 프로필에서 발급).
6261
+ *
6262
+ * **SDK 의 앱 레벨 API (database, storage, function 등) 용 자격증명이 아닙니다.**
6263
+ * 앱 API 호출에는 `publicKey` 를 사용하세요. 앱 API 경로(`/v1/public/*`)는
6264
+ * Public Key(`cb_pk_*`) 만 허용하며, Secret Key 로 호출하면 서버가 401 을 반환합니다.
6265
+ *
6266
+ * 이 필드는 CLI (`connectbase tunnel`, `connectbase mcp`) 및 사용자 레벨 API 인증에
6267
+ * 사용됩니다. 서버 환경에서만 사용하고 절대 브라우저에 노출하지 마세요.
6006
6268
  */
6007
6269
  secretKey?: string;
6008
6270
  /**
@@ -6168,4 +6430,4 @@ declare class ConnectBase {
6168
6430
  updateConfig(config: Partial<ConnectBaseConfig>): void;
6169
6431
  }
6170
6432
 
6171
- export { AIAPI, type AIChatRequest, type AIChatResponse, type AIMessage, type AISource, type AIStreamChunk, type AITool, type AIToolCall, type AIToolEvent, type AckMessagesRequest, type AdReportResponse, type AdReportSummary, AdsAPI, type AggregateResult, type AggregateStage, ApiError, type AppStatsResponse, type ArchivePolicy, type AtomicOperator, type AtomicOperatorType, AuthError, type AuthSettingsResponse, type BackupInfo, type BatchOperation, type BatchSetPageMetaRequest, type BillingCycle, type BillingKeyResponse, type BiometricInfo, type BiometricResult, type BulkCreateResponse, type BulkError, type CPUInfo, type CancelPaymentRequest, type CancelPaymentResponse, type CancelSubscriptionRequest, type CategoryInfo, type Channel, type ChannelMembership, type ChargeWithBillingKeyRequest, type ChargeWithBillingKeyResponse, type ChatMessage, type ClientMessage, type ColumnSchema, type CommentListResponse, type CompleteUploadRequest, type CompleteUploadResponse, type ConfirmBillingKeyRequest, type ConfirmPaymentRequest, type ConfirmPaymentResponse, ConnectBase, type ConnectBaseConfig, type ConnectedData, type ConnectionState, type ConsumeMessagesResponse, type ConsumeOptions, type CopyTableRequest, type CopyTableResponse, type CreateBackupRequest, type CreateChannelRequest, type CreateColumnRequest, type CreateDataRequest, type CreateDocumentRequest, type CreateFolderRequest, type CreateFolderResponse, type CreateGeoIndexRequest, type CreateIndexRequest, type CreateLobbyRequest, type CreatePlaylistRequest, type CreatePublicKeyRequest, type CreatePublicKeyResponse, type CreateRelationRequest, type CreateSearchIndexRequest, type CreateSecurityRuleRequest, type CreateSubscriptionRequest, type CreateTableRequest, type CreateTriggerRequest, type CreateVideoStorageRequest, type DailyReport, type DataItem, type DataType, type DatabaseChange, type DatabaseChangeMessage, type DatabaseChangeType, type DatabasePresenceState, type DatabaseRealtimeConnectOptions, type DatabaseRealtimeFilter, type DatabaseRealtimeHandlers, type DatabaseRealtimeSubscription, type DatabaseSnapshot, type DatabaseSnapshotMessage, type DatabaseSubscribeOptions, type DeleteWhereResponse, type DeviceInfo, type DocumentResponse, type EnabledProviderInfo, type EnabledProvidersResponse, type ErrorHandler, type ErrorMessage, type ErrorReport, type ErrorTrackerConfig, type ErrorType, type ExportDataRequest, type ExportDataResponse, type FetchDataResponse, type FetchFilesResponse, type FetchPublicKeysResponse, type FileItem, type FileStats, GameAPI, type GameAction, type GameClientConfig, type GameConnectionState, type GameConnectionStatus, type GameDelta, type GameEventHandlers, type GamePlayer, GameRoom, type GameRoomConfig, type GameRoomInfo, GameRoomTransport, type GameServerMessage, type GameServerMessageType, type GameState, type GameTransportConfig, type GenerateUploadURLByPathRequest, type GenerateUploadURLRequest, type GenerateUploadURLResponse, type GeoIndex, type GeoNear, type GeoPoint, type GeoPolygon, type GeoQuery, type GeoResponse, type GeoResult, type GeoWithin, type GetAuthorizationURLResponse, type GetFileByPathResponse, type GoogleConnectionStatus, type GuestMemberSignInResponse, type HistoryResponse, type ICEServer, type ICEServersResponse, type ImageResult, type ImportDataRequest, type ImportDataResponse, type IndexAnalysis, type IndexRecommendation, type InitUploadResponse, type InvokeFunctionRequest, type InvokeFunctionResponse, type IssueBillingKeyRequest, type IssueBillingKeyResponse, type JoinQueueRequest, type JoinRoomRequest, type JoinRoomResponse, type KnowledgeSearchRequest, type KnowledgeSearchResponse, type KnowledgeSearchResult, type LeaderboardEntry, type LifecyclePolicy, type ListBillingKeysResponse, type ListDocumentsResponse, type ListPageMetasOptions, type ListPageMetasResponse, type ListSubscriptionPaymentsRequest, type ListSubscriptionPaymentsResponse, type ListSubscriptionsRequest, type ListSubscriptionsResponse, type LobbyInfo, type LobbyInvite, type LobbyMember, type LobbyVisibility, type MatchResult, type MatchmakingTicket, type MemberInfoResponse, type MemberSignInRequest, type MemberSignInResponse, type MemberSignUpRequest, type MemberSignUpResponse, type MembershipTier, type MemoryInfo, type MessageHandler, type MigrateDataRequest, type MigrateDataResponse, type MoveFileRequest, type NackMessageRequest, NativeAPI, type OAuthCallbackResponse, type OAuthProvider, type OpenDialogOptions, type OpenDialogResult, type PageMetaResponse, type PartyInfo, type PartyInvite, type PartyMember, type PauseSubscriptionRequest, type PaymentDetail, type PaymentProvider, type PaymentStatus, type PeerInfo, type Platform, type PlayerEvent, type PlayerStats, type Playlist, type PlaylistItem, type PongMessage, type PopulateOption, type Position, type PreparePaymentRequest, type PreparePaymentResponse, type PresenceChangeHandler, type PresenceInfo, type PresenceSetOptions, type PresenceStatus, type PresenceStatusResult, type PublicKeyItem, type PublishBatchRequest, type PublishBatchResponse, type PublishMessageRequest, type PublishMessageResponse, type PushPlatform, type QualityProgress, type QueryOptions, type QueueInfoResponse, type QueueMessage, type ReadReceiptHandler, type ReadReceiptInfo, type RealtimeConnectOptions, type RealtimeMessage, type RegisterDeviceRequest, type RelationType, type RenameFileRequest, type RenameFileResponse, type ReplayHighlight, type ReplayInfo, type ReplayPlayerInfo, type RestoreBackupRequest, type RestoreBackupResponse, type RetentionPolicy, type RoomInfo, type RoomStats, type RoomsResponse, type SaveDialogOptions, type SaveDialogResult, type SearchIndex, type SearchOptions, type SearchResponse, type SearchResult, type SecurityRule, type SendOptions, type ServerMessage, type SetPageMetaRequest, type Shorts, type ShortsListResponse, type SignalingMessage, type SignalingMessageType, type SlowQueryInfo, type SpectatorInfo, type SpectatorPlayerState, type SpectatorState, type StateChange, type StateChangeHandler, type StorageUploadOptions, type StreamDoneCallback, type StreamDoneData, type StreamErrorCallback, type StreamHandlers, type StreamMessage, type StreamOptions, type StreamSession, type StreamTokenCallback, type StreamToolCallCallback, type StreamToolResultCallback, type StreamURLResponse, type SubscribeOptions, type SubscribeTopicRequest, type SubscribedData, type Subscription, type SubscriptionPaymentResponse, type SubscriptionPaymentStatus, type SubscriptionResponse, type SubscriptionStatus, type SuperChat, type SystemInfo, type TTLConfig, type TableIndex, type TableRelation, type TableSchema, type TransactionRead, type TransactionWrite, type TranscodeStatus, type TransportType, type Trigger, type TriggerEvent, type TriggerHandlerType, type TypingChangeHandler, type TypingInfo, type UpdateBillingKeyRequest, type UpdateChannelRequest, type UpdateColumnRequest, type UpdateCustomDataRequest, type UpdateCustomDataResponse, type UpdateDataRequest, type UpdateLobbyRequest, type UpdatePublicKeyRequest, type UpdatePublicKeyResponse, type UpdateSecurityRuleRequest, type UpdateSubscriptionRequest, type UpdateTriggerRequest, type UpdateVideoRequest, type UpdateVideoStorageRequest, type UploadByPathOptions, type UploadFileResponse, type UploadOptions, type UploadProgress, type VAPIDPublicKeyResponse, type ValidateResponse, type Video, type VideoComment, type VideoListOptions, type VideoListResponse, VideoProcessingError, type VideoQuality, type VideoStatus, type VideoStorage, type VideoStorageListResponse, type VideoVisibility, type VoiceChannel, type VoiceMember, type WaitOptions, type WatchHistoryItem, type WebPushSubscription, type WebRTCConnectOptions, type WebRTCConnectionState, type WebRTCMode, type WhereCondition, type WhereOperator, ConnectBase as default, isWebTransportSupported };
6433
+ export { AIAPI, type AIChatRequest, type AIChatResponse, type AIMessage, type AISource, type AIStreamChunk, type AITool, type AIToolCall, type AIToolEvent, type AckMessagesRequest, type AdReportResponse, type AdReportSummary, AdsAPI, type AggregateResult, type AggregateStage, ApiError, type ApiErrorDetail, type AppStatsResponse, type ArchivePolicy, type AtomicOperator, type AtomicOperatorType, AuthError, type AuthSettingsResponse, type BackupInfo, type BatchOperation, type BatchSetPageMetaRequest, type BillingCycle, type BillingKeyResponse, type BiometricInfo, type BiometricResult, type BulkCreateResponse, type BulkError, type CPUInfo, type CancelPaymentRequest, type CancelPaymentResponse, type CancelSubscriptionRequest, type CategoryInfo, type Channel, type ChannelMembership, type ChargeWithBillingKeyRequest, type ChargeWithBillingKeyResponse, type ChatMessage, type ClientMessage, type ColumnSchema, type CommentListResponse, type CompleteUploadRequest, type CompleteUploadResponse, type ConfirmBillingKeyRequest, type ConfirmPaymentRequest, type ConfirmPaymentResponse, ConnectBase, type ConnectBaseConfig, type ConnectedData, type ConnectionState, type ConsumeMessagesResponse, type ConsumeOptions, type CopyTableRequest, type CopyTableResponse, type CreateBackupRequest, type CreateChannelRequest, type CreateColumnRequest, type CreateDataRequest, type CreateDocumentRequest, type CreateFolderRequest, type CreateFolderResponse, type CreateGeoIndexRequest, type CreateIndexRequest, type CreateLobbyRequest, type CreatePlaylistRequest, type CreatePublicKeyRequest, type CreatePublicKeyResponse, type CreateRelationRequest, type CreateSearchIndexRequest, type CreateSecurityRuleRequest, type CreateSubscriptionRequest, type CreateTableRequest, type CreateTriggerRequest, type CreateVideoStorageRequest, type DailyReport, type DataItem, type DataType, type DatabaseChange, type DatabaseChangeMessage, type DatabaseChangeType, type DatabasePresenceState, type DatabaseRealtimeConnectOptions, type DatabaseRealtimeFilter, type DatabaseRealtimeHandlers, type DatabaseRealtimeSubscription, type DatabaseSnapshot, type DatabaseSnapshotMessage, type DatabaseSubscribeOptions, type DeleteWhereResponse, type DeviceInfo, type DocumentResponse, type EnabledProviderInfo, type EnabledProvidersResponse, type ErrorHandler, type ErrorMessage, type ErrorReport, type ErrorTrackerConfig, type ErrorType, type ExportDataRequest, type ExportDataResponse, type FetchDataResponse, type FetchFilesResponse, type FetchPublicKeysResponse, type FileItem, type FileStats, GameAPI, type GameAction, type GameClientConfig, type GameConnectionState, type GameConnectionStatus, type GameDelta, type GameEventHandlers, type GamePlayer, GameRoom, type GameRoomConfig, type GameRoomInfo, GameRoomTransport, type GameServerMessage, type GameServerMessageType, type GameState, type GameTransportConfig, type GenerateUploadURLByPathRequest, type GenerateUploadURLRequest, type GenerateUploadURLResponse, type GeoIndex, type GeoNear, type GeoPoint, type GeoPolygon, type GeoQuery, type GeoResponse, type GeoResult, type GeoWithin, type GetAuthorizationURLResponse, type GetFileByPathResponse, type GoogleConnectionStatus, type GuestMemberSignInResponse, type HistoryResponse, type ICEServer, type ICEServersResponse, type ImageResult, type ImportDataRequest, type ImportDataResponse, type IndexAnalysis, type IndexRecommendation, type InitUploadResponse, type InvokeFunctionRequest, type InvokeFunctionResponse, type IssueBillingKeyRequest, type IssueBillingKeyResponse, type JoinQueueRequest, type JoinRoomRequest, type JoinRoomResponse, type KnowledgeSearchRequest, type KnowledgeSearchResponse, type KnowledgeSearchResult, type LeaderboardEntry, type LifecyclePolicy, type ListBillingKeysResponse, type ListDocumentsResponse, type ListPageMetasOptions, type ListPageMetasResponse, type ListSubscriptionPaymentsRequest, type ListSubscriptionPaymentsResponse, type ListSubscriptionsRequest, type ListSubscriptionsResponse, type LobbyInfo, type LobbyInvite, type LobbyMember, type LobbyVisibility, type MatchResult, type MatchmakingTicket, type MemberInfoResponse, type MemberSignInRequest, type MemberSignInResponse, type MemberSignUpRequest, type MemberSignUpResponse, type MembershipTier, type MemoryInfo, type MessageHandler, type MigrateDataRequest, type MigrateDataResponse, type MoveFileRequest, type NackMessageRequest, NativeAPI, type OAuthCallbackResponse, type OAuthProvider, type OpenDialogOptions, type OpenDialogResult, type PageMetaResponse, type PartyInfo, type PartyInvite, type PartyMember, type PauseSubscriptionRequest, type PaymentDetail, type PaymentProvider, type PaymentStatus, type PeerInfo, type Platform, type PlayerEvent, type PlayerStats, type Playlist, type PlaylistItem, type PongMessage, type PopulateOption, type Position, type PreparePaymentRequest, type PreparePaymentResponse, type PresenceChangeHandler, type PresenceInfo, type PresenceSetOptions, type PresenceStatus, type PresenceStatusResult, type PublicKeyItem, type PublishBatchRequest, type PublishBatchResponse, type PublishMessageRequest, type PublishMessageResponse, type PushPlatform, type QualityProgress, type QueryOptions, type QueueInfoResponse, type QueueMessage, type ReadReceiptHandler, type ReadReceiptInfo, type RealtimeConnectOptions, type RealtimeMessage, type RegisterDeviceRequest, type RelationType, type RenameFileRequest, type RenameFileResponse, type ReplayHighlight, type ReplayInfo, type ReplayPlayerInfo, type RestoreBackupRequest, type RestoreBackupResponse, type RetentionPolicy, type RoomInfo, type RoomStats, type RoomsResponse, type SaveDialogOptions, type SaveDialogResult, type SearchIndex, type SearchOptions, type SearchResponse, type SearchResult, type SecurityRule, type SendOptions, type ServerMessage, type SetPageMetaRequest, type Shorts, type ShortsListResponse, type SignalingMessage, type SignalingMessageType, type SlowQueryInfo, type SpectatorInfo, type SpectatorPlayerState, type SpectatorState, type StateChange, type StateChangeHandler, type StorageUploadOptions, type StreamDoneCallback, type StreamDoneData, type StreamErrorCallback, type StreamHandlers, type StreamMessage, type StreamOptions, type StreamSession, type StreamTokenCallback, type StreamToolCallCallback, type StreamToolResultCallback, type StreamURLResponse, type SubscribeOptions, type SubscribeTopicRequest, type SubscribedData, type Subscription, type SubscriptionPaymentResponse, type SubscriptionPaymentStatus, type SubscriptionResponse, type SubscriptionStatus, type SuperChat, type SystemInfo, type TTLConfig, type TableAccessLevel, type TableColumnDef, type TableIndex, type TableRelation, type TableSchema, type TableSchemaDefinition, type TransactionRead, type TransactionWrite, type TranscodeStatus, type TransportType, type Trigger, type TriggerEvent, type TriggerHandlerType, type TypingChangeHandler, type TypingInfo, type UpdateBillingKeyRequest, type UpdateChannelRequest, type UpdateColumnRequest, type UpdateCustomDataRequest, type UpdateCustomDataResponse, type UpdateDataRequest, type UpdateLobbyRequest, type UpdatePublicKeyRequest, type UpdatePublicKeyResponse, type UpdateSecurityRuleRequest, type UpdateSubscriptionRequest, type UpdateTriggerRequest, type UpdateVideoRequest, type UpdateVideoStorageRequest, type UploadByPathOptions, type UploadFileResponse, type UploadOptions, type UploadProgress, type VAPIDPublicKeyResponse, type ValidateResponse, type ValidationSchema, type ValidationSchemaField, type ValidationStateTransitions, type Video, type VideoComment, type VideoListOptions, type VideoListResponse, VideoProcessingError, type VideoQuality, type VideoStatus, type VideoStorage, type VideoStorageListResponse, type VideoVisibility, type VoiceChannel, type VoiceMember, type WaitOptions, type WatchHistoryItem, type WebPushSubscription, type WebRTCConnectOptions, type WebRTCConnectionState, type WebRTCMode, type WhereCondition, type WhereOperator, ConnectBase as default, isWebTransportSupported };