@authhero/cloudflare-adapter 2.7.6 → 2.8.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.
@@ -2,6 +2,11 @@
2
2
 
3
3
  import { z } from '@hono/zod-openapi';
4
4
 
5
+ export interface Totals {
6
+ start: number;
7
+ limit: number;
8
+ length: number;
9
+ }
5
10
  declare const customDomainInsertSchema: z.ZodObject<{
6
11
  domain: z.ZodString;
7
12
  custom_domain_id: z.ZodOptional<z.ZodString>;
@@ -229,6 +234,214 @@ declare const customDomainWithTenantIdSchema: z.ZodObject<{
229
234
  } | undefined;
230
235
  }>;
231
236
  export type CustomDomainWithTenantId = z.infer<typeof customDomainWithTenantIdSchema>;
237
+ export interface ListParams {
238
+ page?: number;
239
+ per_page?: number;
240
+ include_totals?: boolean;
241
+ q?: string;
242
+ sort?: {
243
+ sort_by: string;
244
+ sort_order: "asc" | "desc";
245
+ };
246
+ }
247
+ declare const logInsertSchema: z.ZodObject<{
248
+ type: z.ZodEffects<z.ZodString, "acls_summary" | "actions_execution_failed" | "api_limit" | "api_limit_warning" | "appi" | "ciba_exchange_failed" | "ciba_exchange_succeeded" | "ciba_start_failed" | "ciba_start_succeeded" | "cls" | "cs" | "depnote" | "f" | "fc" | "fce" | "fco" | "fcoa" | "fcp" | "fcph" | "fcpn" | "fcpr" | "fcpro" | "fcu" | "fd" | "fdeac" | "fdeaz" | "fdecc" | "fdu" | "feacft" | "feccft" | "fecte" | "fede" | "federated_logout_failed" | "fens" | "feoobft" | "feotpft" | "fepft" | "fepotpft" | "fercft" | "ferrt" | "fertft" | "fh" | "fi" | "flo" | "flows_execution_completed" | "flows_execution_failed" | "fn" | "forms_submission_failed" | "forms_submission_succeeded" | "fp" | "fpar" | "fpurh" | "fs" | "fsa" | "fu" | "fui" | "fv" | "fvr" | "gd_auth_email_verification" | "gd_auth_fail_email_verification" | "gd_auth_failed" | "gd_auth_rejected" | "gd_auth_succeed" | "gd_enrollment_complete" | "gd_otp_rate_limit_exceed" | "gd_recovery_failed" | "gd_recovery_rate_limit_exceed" | "gd_recovery_succeed" | "gd_send_email" | "gd_send_email_verification" | "gd_send_email_verification_failure" | "gd_send_pn" | "gd_send_pn_failure" | "gd_send_sms" | "gd_send_sms_failure" | "gd_send_voice" | "gd_send_voice_failure" | "gd_start_auth" | "gd_start_enroll" | "gd_start_enroll_failed" | "gd_tenant_update" | "gd_unenroll" | "gd_update_device_account" | "gd_webauthn_challenge_failed" | "gd_webauthn_enrollment_failed" | "kms_key_management_failure" | "kms_key_management_success" | "kms_key_state_changed" | "limit_delegation" | "limit_mu" | "limit_sul" | "limit_wc" | "mfar" | "mgmt_api_read" | "my_account_authentication_method_failed" | "my_account_authentication_method_succeeded" | "oidc_backchannel_logout_failed" | "oidc_backchannel_logout_succeeded" | "organization_member_added" | "passkey_challenge_failed" | "passkey_challenge_started" | "pla" | "pwd_leak" | "reset_pwd_leak" | "resource_cleanup" | "rich_consents_access_error" | "s" | "sapi" | "sce" | "scoa" | "scp" | "scpn" | "scpr" | "scu" | "scv" | "sd" | "sdu" | "seacft" | "seccft" | "secte" | "sede" | "sens" | "seoobft" | "seotpft" | "sepft" | "sepkoobft" | "sepkotpft" | "sepkrcft" | "sercft" | "sertft" | "si" | "signup_pwd_leak" | "slo" | "srrt" | "ss" | "ss_sso_failure" | "ss_sso_info" | "ss_sso_success" | "ssa" | "sscim" | "sui" | "sv" | "svr" | "too_many_records" | "ublkdu" | "universal_logout_failed" | "universal_logout_succeeded" | "w" | "wn" | "wum", string>;
249
+ date: z.ZodString;
250
+ description: z.ZodOptional<z.ZodString>;
251
+ ip: z.ZodOptional<z.ZodString>;
252
+ user_agent: z.ZodString;
253
+ details: z.ZodOptional<z.ZodAny>;
254
+ isMobile: z.ZodBoolean;
255
+ user_id: z.ZodOptional<z.ZodString>;
256
+ user_name: z.ZodOptional<z.ZodString>;
257
+ connection: z.ZodOptional<z.ZodString>;
258
+ connection_id: z.ZodOptional<z.ZodString>;
259
+ client_id: z.ZodOptional<z.ZodString>;
260
+ client_name: z.ZodOptional<z.ZodString>;
261
+ audience: z.ZodOptional<z.ZodString>;
262
+ scope: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
263
+ strategy: z.ZodOptional<z.ZodString>;
264
+ strategy_type: z.ZodOptional<z.ZodString>;
265
+ hostname: z.ZodOptional<z.ZodString>;
266
+ auth0_client: z.ZodOptional<z.ZodObject<{
267
+ name: z.ZodString;
268
+ version: z.ZodString;
269
+ env: z.ZodOptional<z.ZodObject<{
270
+ node: z.ZodOptional<z.ZodString>;
271
+ }, "strip", z.ZodTypeAny, {
272
+ node?: string | undefined;
273
+ }, {
274
+ node?: string | undefined;
275
+ }>>;
276
+ }, "strip", z.ZodTypeAny, {
277
+ name: string;
278
+ version: string;
279
+ env?: {
280
+ node?: string | undefined;
281
+ } | undefined;
282
+ }, {
283
+ name: string;
284
+ version: string;
285
+ env?: {
286
+ node?: string | undefined;
287
+ } | undefined;
288
+ }>>;
289
+ log_id: z.ZodOptional<z.ZodString>;
290
+ }, "strip", z.ZodTypeAny, {
291
+ type: "acls_summary" | "actions_execution_failed" | "api_limit" | "api_limit_warning" | "appi" | "ciba_exchange_failed" | "ciba_exchange_succeeded" | "ciba_start_failed" | "ciba_start_succeeded" | "cls" | "cs" | "depnote" | "f" | "fc" | "fce" | "fco" | "fcoa" | "fcp" | "fcph" | "fcpn" | "fcpr" | "fcpro" | "fcu" | "fd" | "fdeac" | "fdeaz" | "fdecc" | "fdu" | "feacft" | "feccft" | "fecte" | "fede" | "federated_logout_failed" | "fens" | "feoobft" | "feotpft" | "fepft" | "fepotpft" | "fercft" | "ferrt" | "fertft" | "fh" | "fi" | "flo" | "flows_execution_completed" | "flows_execution_failed" | "fn" | "forms_submission_failed" | "forms_submission_succeeded" | "fp" | "fpar" | "fpurh" | "fs" | "fsa" | "fu" | "fui" | "fv" | "fvr" | "gd_auth_email_verification" | "gd_auth_fail_email_verification" | "gd_auth_failed" | "gd_auth_rejected" | "gd_auth_succeed" | "gd_enrollment_complete" | "gd_otp_rate_limit_exceed" | "gd_recovery_failed" | "gd_recovery_rate_limit_exceed" | "gd_recovery_succeed" | "gd_send_email" | "gd_send_email_verification" | "gd_send_email_verification_failure" | "gd_send_pn" | "gd_send_pn_failure" | "gd_send_sms" | "gd_send_sms_failure" | "gd_send_voice" | "gd_send_voice_failure" | "gd_start_auth" | "gd_start_enroll" | "gd_start_enroll_failed" | "gd_tenant_update" | "gd_unenroll" | "gd_update_device_account" | "gd_webauthn_challenge_failed" | "gd_webauthn_enrollment_failed" | "kms_key_management_failure" | "kms_key_management_success" | "kms_key_state_changed" | "limit_delegation" | "limit_mu" | "limit_sul" | "limit_wc" | "mfar" | "mgmt_api_read" | "my_account_authentication_method_failed" | "my_account_authentication_method_succeeded" | "oidc_backchannel_logout_failed" | "oidc_backchannel_logout_succeeded" | "organization_member_added" | "passkey_challenge_failed" | "passkey_challenge_started" | "pla" | "pwd_leak" | "reset_pwd_leak" | "resource_cleanup" | "rich_consents_access_error" | "s" | "sapi" | "sce" | "scoa" | "scp" | "scpn" | "scpr" | "scu" | "scv" | "sd" | "sdu" | "seacft" | "seccft" | "secte" | "sede" | "sens" | "seoobft" | "seotpft" | "sepft" | "sepkoobft" | "sepkotpft" | "sepkrcft" | "sercft" | "sertft" | "si" | "signup_pwd_leak" | "slo" | "srrt" | "ss" | "ss_sso_failure" | "ss_sso_info" | "ss_sso_success" | "ssa" | "sscim" | "sui" | "sv" | "svr" | "too_many_records" | "ublkdu" | "universal_logout_failed" | "universal_logout_succeeded" | "w" | "wn" | "wum";
292
+ date: string;
293
+ user_agent: string;
294
+ isMobile: boolean;
295
+ description?: string | undefined;
296
+ connection?: string | undefined;
297
+ user_id?: string | undefined;
298
+ client_id?: string | undefined;
299
+ audience?: string | undefined;
300
+ scope?: string[] | undefined;
301
+ strategy?: string | undefined;
302
+ connection_id?: string | undefined;
303
+ ip?: string | undefined;
304
+ details?: any;
305
+ user_name?: string | undefined;
306
+ client_name?: string | undefined;
307
+ strategy_type?: string | undefined;
308
+ hostname?: string | undefined;
309
+ auth0_client?: {
310
+ name: string;
311
+ version: string;
312
+ env?: {
313
+ node?: string | undefined;
314
+ } | undefined;
315
+ } | undefined;
316
+ log_id?: string | undefined;
317
+ }, {
318
+ type: string;
319
+ date: string;
320
+ user_agent: string;
321
+ isMobile: boolean;
322
+ description?: string | undefined;
323
+ connection?: string | undefined;
324
+ user_id?: string | undefined;
325
+ client_id?: string | undefined;
326
+ audience?: string | undefined;
327
+ scope?: string[] | undefined;
328
+ strategy?: string | undefined;
329
+ connection_id?: string | undefined;
330
+ ip?: string | undefined;
331
+ details?: any;
332
+ user_name?: string | undefined;
333
+ client_name?: string | undefined;
334
+ strategy_type?: string | undefined;
335
+ hostname?: string | undefined;
336
+ auth0_client?: {
337
+ name: string;
338
+ version: string;
339
+ env?: {
340
+ node?: string | undefined;
341
+ } | undefined;
342
+ } | undefined;
343
+ log_id?: string | undefined;
344
+ }>;
345
+ export type LogInsert = z.infer<typeof logInsertSchema>;
346
+ declare const logSchema: z.ZodObject<{
347
+ log_id: z.ZodString;
348
+ type: z.ZodEffects<z.ZodString, "acls_summary" | "actions_execution_failed" | "api_limit" | "api_limit_warning" | "appi" | "ciba_exchange_failed" | "ciba_exchange_succeeded" | "ciba_start_failed" | "ciba_start_succeeded" | "cls" | "cs" | "depnote" | "f" | "fc" | "fce" | "fco" | "fcoa" | "fcp" | "fcph" | "fcpn" | "fcpr" | "fcpro" | "fcu" | "fd" | "fdeac" | "fdeaz" | "fdecc" | "fdu" | "feacft" | "feccft" | "fecte" | "fede" | "federated_logout_failed" | "fens" | "feoobft" | "feotpft" | "fepft" | "fepotpft" | "fercft" | "ferrt" | "fertft" | "fh" | "fi" | "flo" | "flows_execution_completed" | "flows_execution_failed" | "fn" | "forms_submission_failed" | "forms_submission_succeeded" | "fp" | "fpar" | "fpurh" | "fs" | "fsa" | "fu" | "fui" | "fv" | "fvr" | "gd_auth_email_verification" | "gd_auth_fail_email_verification" | "gd_auth_failed" | "gd_auth_rejected" | "gd_auth_succeed" | "gd_enrollment_complete" | "gd_otp_rate_limit_exceed" | "gd_recovery_failed" | "gd_recovery_rate_limit_exceed" | "gd_recovery_succeed" | "gd_send_email" | "gd_send_email_verification" | "gd_send_email_verification_failure" | "gd_send_pn" | "gd_send_pn_failure" | "gd_send_sms" | "gd_send_sms_failure" | "gd_send_voice" | "gd_send_voice_failure" | "gd_start_auth" | "gd_start_enroll" | "gd_start_enroll_failed" | "gd_tenant_update" | "gd_unenroll" | "gd_update_device_account" | "gd_webauthn_challenge_failed" | "gd_webauthn_enrollment_failed" | "kms_key_management_failure" | "kms_key_management_success" | "kms_key_state_changed" | "limit_delegation" | "limit_mu" | "limit_sul" | "limit_wc" | "mfar" | "mgmt_api_read" | "my_account_authentication_method_failed" | "my_account_authentication_method_succeeded" | "oidc_backchannel_logout_failed" | "oidc_backchannel_logout_succeeded" | "organization_member_added" | "passkey_challenge_failed" | "passkey_challenge_started" | "pla" | "pwd_leak" | "reset_pwd_leak" | "resource_cleanup" | "rich_consents_access_error" | "s" | "sapi" | "sce" | "scoa" | "scp" | "scpn" | "scpr" | "scu" | "scv" | "sd" | "sdu" | "seacft" | "seccft" | "secte" | "sede" | "sens" | "seoobft" | "seotpft" | "sepft" | "sepkoobft" | "sepkotpft" | "sepkrcft" | "sercft" | "sertft" | "si" | "signup_pwd_leak" | "slo" | "srrt" | "ss" | "ss_sso_failure" | "ss_sso_info" | "ss_sso_success" | "ssa" | "sscim" | "sui" | "sv" | "svr" | "too_many_records" | "ublkdu" | "universal_logout_failed" | "universal_logout_succeeded" | "w" | "wn" | "wum", string>;
349
+ date: z.ZodString;
350
+ description: z.ZodOptional<z.ZodString>;
351
+ ip: z.ZodOptional<z.ZodString>;
352
+ user_agent: z.ZodString;
353
+ details: z.ZodOptional<z.ZodAny>;
354
+ isMobile: z.ZodBoolean;
355
+ user_id: z.ZodOptional<z.ZodString>;
356
+ user_name: z.ZodOptional<z.ZodString>;
357
+ connection: z.ZodOptional<z.ZodString>;
358
+ connection_id: z.ZodOptional<z.ZodString>;
359
+ client_id: z.ZodOptional<z.ZodString>;
360
+ client_name: z.ZodOptional<z.ZodString>;
361
+ audience: z.ZodOptional<z.ZodString>;
362
+ scope: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
363
+ strategy: z.ZodOptional<z.ZodString>;
364
+ strategy_type: z.ZodOptional<z.ZodString>;
365
+ hostname: z.ZodOptional<z.ZodString>;
366
+ auth0_client: z.ZodOptional<z.ZodObject<{
367
+ name: z.ZodString;
368
+ version: z.ZodString;
369
+ env: z.ZodOptional<z.ZodObject<{
370
+ node: z.ZodOptional<z.ZodString>;
371
+ }, "strip", z.ZodTypeAny, {
372
+ node?: string | undefined;
373
+ }, {
374
+ node?: string | undefined;
375
+ }>>;
376
+ }, "strip", z.ZodTypeAny, {
377
+ name: string;
378
+ version: string;
379
+ env?: {
380
+ node?: string | undefined;
381
+ } | undefined;
382
+ }, {
383
+ name: string;
384
+ version: string;
385
+ env?: {
386
+ node?: string | undefined;
387
+ } | undefined;
388
+ }>>;
389
+ }, "strip", z.ZodTypeAny, {
390
+ type: "acls_summary" | "actions_execution_failed" | "api_limit" | "api_limit_warning" | "appi" | "ciba_exchange_failed" | "ciba_exchange_succeeded" | "ciba_start_failed" | "ciba_start_succeeded" | "cls" | "cs" | "depnote" | "f" | "fc" | "fce" | "fco" | "fcoa" | "fcp" | "fcph" | "fcpn" | "fcpr" | "fcpro" | "fcu" | "fd" | "fdeac" | "fdeaz" | "fdecc" | "fdu" | "feacft" | "feccft" | "fecte" | "fede" | "federated_logout_failed" | "fens" | "feoobft" | "feotpft" | "fepft" | "fepotpft" | "fercft" | "ferrt" | "fertft" | "fh" | "fi" | "flo" | "flows_execution_completed" | "flows_execution_failed" | "fn" | "forms_submission_failed" | "forms_submission_succeeded" | "fp" | "fpar" | "fpurh" | "fs" | "fsa" | "fu" | "fui" | "fv" | "fvr" | "gd_auth_email_verification" | "gd_auth_fail_email_verification" | "gd_auth_failed" | "gd_auth_rejected" | "gd_auth_succeed" | "gd_enrollment_complete" | "gd_otp_rate_limit_exceed" | "gd_recovery_failed" | "gd_recovery_rate_limit_exceed" | "gd_recovery_succeed" | "gd_send_email" | "gd_send_email_verification" | "gd_send_email_verification_failure" | "gd_send_pn" | "gd_send_pn_failure" | "gd_send_sms" | "gd_send_sms_failure" | "gd_send_voice" | "gd_send_voice_failure" | "gd_start_auth" | "gd_start_enroll" | "gd_start_enroll_failed" | "gd_tenant_update" | "gd_unenroll" | "gd_update_device_account" | "gd_webauthn_challenge_failed" | "gd_webauthn_enrollment_failed" | "kms_key_management_failure" | "kms_key_management_success" | "kms_key_state_changed" | "limit_delegation" | "limit_mu" | "limit_sul" | "limit_wc" | "mfar" | "mgmt_api_read" | "my_account_authentication_method_failed" | "my_account_authentication_method_succeeded" | "oidc_backchannel_logout_failed" | "oidc_backchannel_logout_succeeded" | "organization_member_added" | "passkey_challenge_failed" | "passkey_challenge_started" | "pla" | "pwd_leak" | "reset_pwd_leak" | "resource_cleanup" | "rich_consents_access_error" | "s" | "sapi" | "sce" | "scoa" | "scp" | "scpn" | "scpr" | "scu" | "scv" | "sd" | "sdu" | "seacft" | "seccft" | "secte" | "sede" | "sens" | "seoobft" | "seotpft" | "sepft" | "sepkoobft" | "sepkotpft" | "sepkrcft" | "sercft" | "sertft" | "si" | "signup_pwd_leak" | "slo" | "srrt" | "ss" | "ss_sso_failure" | "ss_sso_info" | "ss_sso_success" | "ssa" | "sscim" | "sui" | "sv" | "svr" | "too_many_records" | "ublkdu" | "universal_logout_failed" | "universal_logout_succeeded" | "w" | "wn" | "wum";
391
+ date: string;
392
+ user_agent: string;
393
+ isMobile: boolean;
394
+ log_id: string;
395
+ description?: string | undefined;
396
+ connection?: string | undefined;
397
+ user_id?: string | undefined;
398
+ client_id?: string | undefined;
399
+ audience?: string | undefined;
400
+ scope?: string[] | undefined;
401
+ strategy?: string | undefined;
402
+ connection_id?: string | undefined;
403
+ ip?: string | undefined;
404
+ details?: any;
405
+ user_name?: string | undefined;
406
+ client_name?: string | undefined;
407
+ strategy_type?: string | undefined;
408
+ hostname?: string | undefined;
409
+ auth0_client?: {
410
+ name: string;
411
+ version: string;
412
+ env?: {
413
+ node?: string | undefined;
414
+ } | undefined;
415
+ } | undefined;
416
+ }, {
417
+ type: string;
418
+ date: string;
419
+ user_agent: string;
420
+ isMobile: boolean;
421
+ log_id: string;
422
+ description?: string | undefined;
423
+ connection?: string | undefined;
424
+ user_id?: string | undefined;
425
+ client_id?: string | undefined;
426
+ audience?: string | undefined;
427
+ scope?: string[] | undefined;
428
+ strategy?: string | undefined;
429
+ connection_id?: string | undefined;
430
+ ip?: string | undefined;
431
+ details?: any;
432
+ user_name?: string | undefined;
433
+ client_name?: string | undefined;
434
+ strategy_type?: string | undefined;
435
+ hostname?: string | undefined;
436
+ auth0_client?: {
437
+ name: string;
438
+ version: string;
439
+ env?: {
440
+ node?: string | undefined;
441
+ } | undefined;
442
+ } | undefined;
443
+ }>;
444
+ export type Log = z.infer<typeof logSchema>;
232
445
  export interface CacheAdapter {
233
446
  /**
234
447
  * Get a value from the cache
@@ -254,6 +467,14 @@ export interface CacheAdapter {
254
467
  */
255
468
  clear(): Promise<void>;
256
469
  }
470
+ export interface ListLogsResponse extends Totals {
471
+ logs: Log[];
472
+ }
473
+ export interface LogsDataAdapter {
474
+ create(tenantId: string, params: LogInsert): Promise<Log>;
475
+ list(tenantId: string, params?: ListParams): Promise<ListLogsResponse>;
476
+ get(tenantId: string, logId: string): Promise<Log | null>;
477
+ }
257
478
  export interface CustomDomainsAdapter {
258
479
  create: (tenant_id: string, custom_domain: CustomDomainInsert) => Promise<CustomDomain>;
259
480
  get: (tenant_id: string, id: string) => Promise<CustomDomain | null>;
@@ -262,6 +483,59 @@ export interface CustomDomainsAdapter {
262
483
  remove: (tenant_id: string, id: string) => Promise<boolean>;
263
484
  update: (tenant_id: string, id: string, custom_domain: Partial<CustomDomain>) => Promise<boolean>;
264
485
  }
486
+ export interface R2SQLLogsAdapterConfig {
487
+ /**
488
+ * Cloudflare Pipeline HTTP endpoint URL for ingesting logs
489
+ * Example: "https://{stream-id}.ingest.cloudflare.com"
490
+ * Optional if using pipelineBinding or baseAdapter
491
+ */
492
+ pipelineEndpoint?: string;
493
+ /**
494
+ * Cloudflare service binding for Pipeline (for Workers)
495
+ * Use this instead of pipelineEndpoint when running in a Worker
496
+ * Must have a fetch() method
497
+ */
498
+ pipelineBinding?: {
499
+ fetch: typeof fetch;
500
+ };
501
+ /**
502
+ * Base logs adapter to wrap (passthrough mode)
503
+ * When provided, logs will be sent to both the Pipeline and the base adapter
504
+ */
505
+ baseAdapter?: {
506
+ create: (tenantId: string, log: any) => Promise<any>;
507
+ get: (tenantId: string, logId: string) => Promise<any>;
508
+ list: (tenantId: string, params?: any) => Promise<any>;
509
+ };
510
+ /**
511
+ * Cloudflare account ID for R2 SQL API
512
+ * Required for the official API endpoint
513
+ * Can be passed via environment variable: CLOUDFLARE_ACCOUNT_ID
514
+ */
515
+ accountId: string;
516
+ /**
517
+ * Cloudflare R2 SQL API token for querying logs
518
+ * Can be passed via environment variable: R2_SQL_AUTH_TOKEN
519
+ */
520
+ authToken: string;
521
+ /**
522
+ * R2 warehouse name (e.g., "default")
523
+ * Can be passed via environment variable: R2_WAREHOUSE_NAME
524
+ */
525
+ warehouseName: string;
526
+ /**
527
+ * Catalog database/namespace for logs (default: "default")
528
+ */
529
+ namespace?: string;
530
+ /**
531
+ * Catalog table name for logs (default: "logs")
532
+ */
533
+ tableName?: string;
534
+ /**
535
+ * HTTP timeout in milliseconds (default: 30000)
536
+ */
537
+ timeout?: number;
538
+ }
265
539
  export interface CloudflareConfig {
266
540
  zoneId: string;
267
541
  authKey: string;
@@ -280,11 +554,17 @@ export interface CloudflareConfig {
280
554
  * Key prefix to namespace cache entries (optional)
281
555
  */
282
556
  keyPrefix?: string;
557
+ /**
558
+ * R2 SQL logs adapter configuration (optional)
559
+ */
560
+ r2SqlLogs?: R2SQLLogsAdapterConfig;
283
561
  }
284
- declare function createAdapters(config: CloudflareConfig): {
562
+ export interface CloudflareAdapters {
285
563
  customDomains: CustomDomainsAdapter;
286
564
  cache: CacheAdapter;
287
- };
565
+ logs?: LogsDataAdapter;
566
+ }
567
+ declare function createAdapters(config: CloudflareConfig): CloudflareAdapters;
288
568
 
289
569
  export {
290
570
  createAdapters as default,