@donotdev/core 0.0.23 → 0.0.25
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/functions/index.d.ts +45 -4
- package/functions/index.js +79 -15
- package/index.d.ts +1644 -444
- package/index.js +39 -39
- package/next/index.js +26 -26
- package/package.json +9 -20
- package/server.d.ts +10669 -9495
- package/server.js +1 -1
- package/vite/index.js +40 -37
package/index.d.ts
CHANGED
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
import * as v from 'valibot';
|
|
2
2
|
import * as React$1 from 'react';
|
|
3
3
|
import { ReactNode, ComponentType, ReactElement } from 'react';
|
|
4
|
-
export { ReactNode } from 'react';
|
|
5
4
|
import * as zustand from 'zustand';
|
|
6
|
-
import {
|
|
5
|
+
import { StoreApi, UseBoundStore } from 'zustand';
|
|
7
6
|
import { PersistOptions } from 'zustand/middleware';
|
|
8
7
|
import * as react_jsx_runtime from 'react/jsx-runtime';
|
|
9
8
|
import { DISPLAY } from '@donotdev/components';
|
|
@@ -1381,6 +1380,50 @@ declare function validateAuthSchemas(): {
|
|
|
1381
1380
|
};
|
|
1382
1381
|
};
|
|
1383
1382
|
|
|
1383
|
+
/**
|
|
1384
|
+
* @fileoverview Server Auth Adapter Interface
|
|
1385
|
+
* @description Provider-agnostic interface for server-side authentication.
|
|
1386
|
+
* Token verification, user lookup, and custom claims management.
|
|
1387
|
+
*
|
|
1388
|
+
* @version 0.0.1
|
|
1389
|
+
* @since 0.5.0
|
|
1390
|
+
* @author AMBROISE PARK Consulting
|
|
1391
|
+
*/
|
|
1392
|
+
/** Result of token verification */
|
|
1393
|
+
interface VerifiedToken {
|
|
1394
|
+
/** The user's unique identifier */
|
|
1395
|
+
uid: string;
|
|
1396
|
+
/** Optional: email from the token */
|
|
1397
|
+
email?: string;
|
|
1398
|
+
/** Optional: additional claims embedded in the token */
|
|
1399
|
+
claims?: Record<string, unknown>;
|
|
1400
|
+
}
|
|
1401
|
+
/** Server-side user record (minimal) */
|
|
1402
|
+
interface ServerUserRecord {
|
|
1403
|
+
uid: string;
|
|
1404
|
+
email?: string;
|
|
1405
|
+
displayName?: string;
|
|
1406
|
+
customClaims?: Record<string, unknown>;
|
|
1407
|
+
}
|
|
1408
|
+
/**
|
|
1409
|
+
* Provider-agnostic server-side auth adapter.
|
|
1410
|
+
*
|
|
1411
|
+
* Implementations:
|
|
1412
|
+
* - `FirebaseServerAuthAdapter` (Firebase Admin SDK)
|
|
1413
|
+
* - Future: Supabase server auth, Auth.js, custom JWT adapters
|
|
1414
|
+
*
|
|
1415
|
+
* @version 0.0.1
|
|
1416
|
+
* @since 0.5.0
|
|
1417
|
+
*/
|
|
1418
|
+
interface IServerAuthAdapter {
|
|
1419
|
+
/** Verify an auth token and return the decoded user info. Throws on invalid token. */
|
|
1420
|
+
verifyToken(token: string): Promise<VerifiedToken>;
|
|
1421
|
+
/** Get a user record by UID. Returns null if not found. */
|
|
1422
|
+
getUser(uid: string): Promise<ServerUserRecord | null>;
|
|
1423
|
+
/** Set custom claims on a user (merge semantics — existing claims are preserved unless overwritten). */
|
|
1424
|
+
setCustomClaims(uid: string, claims: Record<string, unknown>): Promise<void>;
|
|
1425
|
+
}
|
|
1426
|
+
|
|
1384
1427
|
/**
|
|
1385
1428
|
* @fileoverview DoNotDev Framework - Unified Types & Constants
|
|
1386
1429
|
* @description Single source of truth for all framework types and constants
|
|
@@ -1401,6 +1444,8 @@ declare function validateAuthSchemas(): {
|
|
|
1401
1444
|
declare const PLATFORMS: {
|
|
1402
1445
|
readonly VITE: "vite";
|
|
1403
1446
|
readonly NEXTJS: "nextjs";
|
|
1447
|
+
readonly EXPO: "expo";
|
|
1448
|
+
readonly REACT_NATIVE: "react-native";
|
|
1404
1449
|
readonly UNKNOWN: "unknown";
|
|
1405
1450
|
};
|
|
1406
1451
|
/**
|
|
@@ -2396,7 +2441,7 @@ declare const DEFAULT_SUBSCRIPTION: SubscriptionClaims;
|
|
|
2396
2441
|
* @author AMBROISE PARK Consulting
|
|
2397
2442
|
*/
|
|
2398
2443
|
declare const CreateCheckoutSessionRequestSchema: v.ObjectSchema<{
|
|
2399
|
-
readonly userId: v.StringSchema<undefined>;
|
|
2444
|
+
readonly userId: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
|
|
2400
2445
|
readonly productId: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
|
|
2401
2446
|
readonly priceId: v.StringSchema<undefined>;
|
|
2402
2447
|
readonly successUrl: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.UrlAction<string, undefined>]>;
|
|
@@ -2574,7 +2619,7 @@ type ProductDeclaration = v.InferOutput<typeof ProductDeclarationSchema> & {
|
|
|
2574
2619
|
* @author AMBROISE PARK Consulting
|
|
2575
2620
|
*/
|
|
2576
2621
|
declare function validateCreateCheckoutSessionRequest(data: unknown): v.SafeParseResult<v.ObjectSchema<{
|
|
2577
|
-
readonly userId: v.StringSchema<undefined>;
|
|
2622
|
+
readonly userId: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
|
|
2578
2623
|
readonly productId: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
|
|
2579
2624
|
readonly priceId: v.StringSchema<undefined>;
|
|
2580
2625
|
readonly successUrl: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.UrlAction<string, undefined>]>;
|
|
@@ -2844,7 +2889,7 @@ declare function validateBillingSchemas(): {
|
|
|
2844
2889
|
success: boolean;
|
|
2845
2890
|
results: {
|
|
2846
2891
|
createCheckoutSessionRequest: v.SafeParseResult<v.ObjectSchema<{
|
|
2847
|
-
readonly userId: v.StringSchema<undefined>;
|
|
2892
|
+
readonly userId: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
|
|
2848
2893
|
readonly productId: v.OptionalSchema<v.StringSchema<undefined>, undefined>;
|
|
2849
2894
|
readonly priceId: v.StringSchema<undefined>;
|
|
2850
2895
|
readonly successUrl: v.SchemaWithPipe<readonly [v.StringSchema<undefined>, v.UrlAction<string, undefined>]>;
|
|
@@ -2938,13 +2983,13 @@ interface BillingAdapter {
|
|
|
2938
2983
|
*/
|
|
2939
2984
|
type BillingEvent = {
|
|
2940
2985
|
type: 'subscription_updated';
|
|
2941
|
-
data:
|
|
2986
|
+
data: unknown;
|
|
2942
2987
|
} | {
|
|
2943
2988
|
type: 'payment_succeeded';
|
|
2944
|
-
data:
|
|
2989
|
+
data: unknown;
|
|
2945
2990
|
} | {
|
|
2946
2991
|
type: 'payment_failed';
|
|
2947
|
-
data:
|
|
2992
|
+
data: unknown;
|
|
2948
2993
|
};
|
|
2949
2994
|
/** Payment method types
|
|
2950
2995
|
*
|
|
@@ -3047,7 +3092,8 @@ interface StripeWebhookEvent {
|
|
|
3047
3092
|
id: string;
|
|
3048
3093
|
type: string;
|
|
3049
3094
|
data: {
|
|
3050
|
-
object
|
|
3095
|
+
/** Raw Stripe object payload — shape depends on event type */
|
|
3096
|
+
object: Record<string, unknown>;
|
|
3051
3097
|
};
|
|
3052
3098
|
created: number;
|
|
3053
3099
|
livemode: boolean;
|
|
@@ -3150,8 +3196,8 @@ type BillingErrorCode = 'unknown' | 'unauthenticated' | 'invalid_request' | 'str
|
|
|
3150
3196
|
interface StripeCheckoutRequest {
|
|
3151
3197
|
/** Stripe price ID for the subscription plan */
|
|
3152
3198
|
priceId: string;
|
|
3153
|
-
/**
|
|
3154
|
-
userId
|
|
3199
|
+
/** @deprecated Server should use context.uid instead of client-supplied userId (IDOR risk) */
|
|
3200
|
+
userId?: string;
|
|
3155
3201
|
/** User email for the subscription */
|
|
3156
3202
|
userEmail: string;
|
|
3157
3203
|
/** URL to redirect to on successful payment */
|
|
@@ -3424,7 +3470,7 @@ interface StripeCustomer {
|
|
|
3424
3470
|
tax_ids?: {
|
|
3425
3471
|
data: Array<{
|
|
3426
3472
|
id: string;
|
|
3427
|
-
type: 'eu_vat' | 'br_cnpj' | 'br_cpf' | 'gb_vat' | 'nz_gst' | 'au_abn' | 'au_arn' | 'in_gst' | 'no_vat' | 'za_vat' | 'ch_vat' | 'mx_rfc' | 'sg_uen' | 'ru_inn' | 'ru_kpp' | 'ca_bn' | 'hk_br' | 'es_cif' | 'tw_vat' | 'th_vat' | 'jp_cn' | 'jp_rn' | 'li_uid' | 'my_itn' | 'us_ein' | 'kr_brn' | 'ca_gst_hst' | 'ca_qst' | 'ca_pst_bc' | 'ca_pst_mb' | 'ca_pst_sk' | 'my_sst' | 'sg_gst' | 'ae_trn' | 'cl_tin' | 'sa_vat' | 'id_npwp'
|
|
3473
|
+
type: 'eu_vat' | 'br_cnpj' | 'br_cpf' | 'gb_vat' | 'nz_gst' | 'au_abn' | 'au_arn' | 'in_gst' | 'no_vat' | 'za_vat' | 'ch_vat' | 'mx_rfc' | 'sg_uen' | 'ru_inn' | 'ru_kpp' | 'ca_bn' | 'hk_br' | 'es_cif' | 'tw_vat' | 'th_vat' | 'jp_cn' | 'jp_rn' | 'li_uid' | 'my_itn' | 'us_ein' | 'kr_brn' | 'ca_gst_hst' | 'ca_qst' | 'ca_pst_bc' | 'ca_pst_mb' | 'ca_pst_sk' | 'my_sst' | 'sg_gst' | 'ae_trn' | 'cl_tin' | 'sa_vat' | 'id_npwp';
|
|
3428
3474
|
value: string;
|
|
3429
3475
|
}>;
|
|
3430
3476
|
};
|
|
@@ -3737,7 +3783,7 @@ interface UserProfile {
|
|
|
3737
3783
|
/** The user's profile photo URL */
|
|
3738
3784
|
photoURL?: string;
|
|
3739
3785
|
/** Additional profile data */
|
|
3740
|
-
[key: string]:
|
|
3786
|
+
[key: string]: unknown;
|
|
3741
3787
|
}
|
|
3742
3788
|
/**
|
|
3743
3789
|
* Factory function to create default user profile
|
|
@@ -4066,7 +4112,7 @@ interface AuthState {
|
|
|
4066
4112
|
status: EmailVerificationStatus;
|
|
4067
4113
|
error?: string;
|
|
4068
4114
|
};
|
|
4069
|
-
authService:
|
|
4115
|
+
authService: unknown;
|
|
4070
4116
|
/**
|
|
4071
4117
|
* Unified feature status - single source of truth for auth state.
|
|
4072
4118
|
* Replaces deprecated boolean flags (initialized, authStateChecked).
|
|
@@ -4105,8 +4151,8 @@ interface AuthActions {
|
|
|
4105
4151
|
clearAuthError: () => void;
|
|
4106
4152
|
/** Set unified status - single source of truth */
|
|
4107
4153
|
setStatus: (status: FeatureStatus) => void;
|
|
4108
|
-
getCustomClaim: (claim: string) =>
|
|
4109
|
-
getCustomClaims: () => Record<string,
|
|
4154
|
+
getCustomClaim: (claim: string) => unknown;
|
|
4155
|
+
getCustomClaims: () => Record<string, unknown>;
|
|
4110
4156
|
emailVerification: {
|
|
4111
4157
|
status: EmailVerificationStatus;
|
|
4112
4158
|
error?: string;
|
|
@@ -4115,9 +4161,9 @@ interface AuthActions {
|
|
|
4115
4161
|
setError: (error: AuthError) => void;
|
|
4116
4162
|
clearError: () => void;
|
|
4117
4163
|
reset: () => void;
|
|
4118
|
-
setAuthService: (authService:
|
|
4119
|
-
getCustomClaimLocal: (claim: string) =>
|
|
4120
|
-
getCustomClaimsLocal: () => Record<string,
|
|
4164
|
+
setAuthService: (authService: unknown) => void;
|
|
4165
|
+
getCustomClaimLocal: (claim: string) => unknown;
|
|
4166
|
+
getCustomClaimsLocal: () => Record<string, unknown>;
|
|
4121
4167
|
setEmailVerificationStatus: (status: EmailVerificationStatus, error?: string) => void;
|
|
4122
4168
|
setUserProfile: (profile: UserProfile) => void;
|
|
4123
4169
|
setUserSubscription: (subscription: UserSubscription) => void;
|
|
@@ -4306,15 +4352,35 @@ interface AuthProvider {
|
|
|
4306
4352
|
/**
|
|
4307
4353
|
* Check if user has a specific role
|
|
4308
4354
|
*/
|
|
4309
|
-
hasRole(role: UserRole): boolean
|
|
4355
|
+
hasRole(role: UserRole): Promise<boolean>;
|
|
4310
4356
|
/**
|
|
4311
4357
|
* Check if user has access to a feature
|
|
4312
4358
|
*/
|
|
4313
|
-
hasFeature(featureId: string): boolean
|
|
4359
|
+
hasFeature(featureId: string): Promise<boolean>;
|
|
4314
4360
|
/**
|
|
4315
4361
|
* Check if user has access to a tier
|
|
4316
4362
|
*/
|
|
4317
|
-
hasTier(requiredTier: string): boolean
|
|
4363
|
+
hasTier(requiredTier: string): Promise<boolean>;
|
|
4364
|
+
signInWithEmail(email: string, password: string): Promise<AuthResult | null>;
|
|
4365
|
+
createUserWithEmail(email: string, password: string): Promise<AuthResult | null>;
|
|
4366
|
+
signInWithPartner(partnerId: AuthPartnerId, method?: AuthMethod): Promise<AuthResult | null>;
|
|
4367
|
+
linkWithPartner(partnerId: AuthPartnerId, method?: AuthMethod): Promise<AuthResult | null>;
|
|
4368
|
+
signInWithGoogleCredential(credential: string): Promise<AuthResult | null>;
|
|
4369
|
+
updatePassword(newPassword: string): Promise<void>;
|
|
4370
|
+
sendEmailVerification(): Promise<void>;
|
|
4371
|
+
sendSignInLinkToEmail(email: string, actionCodeSettings?: {
|
|
4372
|
+
url: string;
|
|
4373
|
+
handleCodeInApp: boolean;
|
|
4374
|
+
}): Promise<void>;
|
|
4375
|
+
signInWithEmailLink(email: string, emailLink?: string): Promise<AuthResult | null>;
|
|
4376
|
+
isSignInWithEmailLink(emailLink?: string): boolean;
|
|
4377
|
+
getEmailVerificationStatus(): Promise<{
|
|
4378
|
+
status: string;
|
|
4379
|
+
}>;
|
|
4380
|
+
isEmailVerificationEnabled(): Promise<boolean>;
|
|
4381
|
+
reauthenticateWithPassword(password: string): Promise<void>;
|
|
4382
|
+
reauthenticateWithProvider(partnerId: AuthPartnerId, method?: AuthMethod): Promise<void>;
|
|
4383
|
+
deleteAccount(password?: string): Promise<void>;
|
|
4318
4384
|
}
|
|
4319
4385
|
/**
|
|
4320
4386
|
* Information about a token including its status and expiration
|
|
@@ -4350,8 +4416,8 @@ interface TokenInfo {
|
|
|
4350
4416
|
*/
|
|
4351
4417
|
interface AuthAPI {
|
|
4352
4418
|
user: AuthUser | null;
|
|
4353
|
-
userProfile:
|
|
4354
|
-
userSubscription:
|
|
4419
|
+
userProfile: UserProfile | null;
|
|
4420
|
+
userSubscription: UserSubscription | null;
|
|
4355
4421
|
loading: boolean;
|
|
4356
4422
|
error: AuthError | null;
|
|
4357
4423
|
emailVerification: {
|
|
@@ -4372,8 +4438,8 @@ interface AuthAPI {
|
|
|
4372
4438
|
hasRole: (role: string) => Promise<boolean>;
|
|
4373
4439
|
hasTier: (tier: string) => Promise<boolean>;
|
|
4374
4440
|
hasFeature: (feature: string) => Promise<boolean>;
|
|
4375
|
-
getCustomClaims: () => Record<string,
|
|
4376
|
-
getCustomClaim: (claim: string) =>
|
|
4441
|
+
getCustomClaims: () => Record<string, unknown>;
|
|
4442
|
+
getCustomClaim: (claim: string) => unknown;
|
|
4377
4443
|
signInWithEmail: (email: string, password: string) => Promise<AuthResult | null>;
|
|
4378
4444
|
createUserWithEmail: (email: string, password: string) => Promise<AuthResult | null>;
|
|
4379
4445
|
signInWithPartner: (partnerId: AuthPartnerId, method?: string) => Promise<AuthResult | null>;
|
|
@@ -4440,133 +4506,6 @@ interface CanAPI {
|
|
|
4440
4506
|
has: (permission: string) => boolean;
|
|
4441
4507
|
}
|
|
4442
4508
|
|
|
4443
|
-
/**
|
|
4444
|
-
* @fileoverview Aggregation Types
|
|
4445
|
-
* @description Types for generic entity aggregation/analytics functions
|
|
4446
|
-
*
|
|
4447
|
-
* @version 0.0.1
|
|
4448
|
-
* @since 0.0.1
|
|
4449
|
-
* @author AMBROISE PARK Consulting
|
|
4450
|
-
*/
|
|
4451
|
-
/** Supported aggregation operations */
|
|
4452
|
-
type AggregateOperation = 'count' | 'sum' | 'avg' | 'min' | 'max';
|
|
4453
|
-
/** Filter operators for aggregation */
|
|
4454
|
-
type AggregateFilterOperator = '==' | '!=' | '>' | '<' | '>=' | '<=';
|
|
4455
|
-
/**
|
|
4456
|
-
* Single metric definition for aggregation
|
|
4457
|
-
*
|
|
4458
|
-
* @example
|
|
4459
|
-
* ```typescript
|
|
4460
|
-
* // Count all documents
|
|
4461
|
-
* { field: '*', operation: 'count', as: 'total' }
|
|
4462
|
-
*
|
|
4463
|
-
* // Sum a numeric field
|
|
4464
|
-
* { field: 'price', operation: 'sum', as: 'totalValue' }
|
|
4465
|
-
*
|
|
4466
|
-
* // Count with filter
|
|
4467
|
-
* {
|
|
4468
|
-
* field: '*',
|
|
4469
|
-
* operation: 'count',
|
|
4470
|
-
* as: 'availableCount',
|
|
4471
|
-
* filter: { field: 'status', operator: '==', value: 'available' }
|
|
4472
|
-
* }
|
|
4473
|
-
* ```
|
|
4474
|
-
*/
|
|
4475
|
-
interface MetricDefinition {
|
|
4476
|
-
/** Field to aggregate ('*' for count all) */
|
|
4477
|
-
field: string;
|
|
4478
|
-
/** Aggregation operation */
|
|
4479
|
-
operation: AggregateOperation;
|
|
4480
|
-
/** Output name for this metric */
|
|
4481
|
-
as: string;
|
|
4482
|
-
/** Optional filter for this metric */
|
|
4483
|
-
filter?: {
|
|
4484
|
-
field: string;
|
|
4485
|
-
operator: AggregateFilterOperator;
|
|
4486
|
-
value: any;
|
|
4487
|
-
};
|
|
4488
|
-
}
|
|
4489
|
-
/**
|
|
4490
|
-
* Group by definition for aggregation
|
|
4491
|
-
*
|
|
4492
|
-
* @example
|
|
4493
|
-
* ```typescript
|
|
4494
|
-
* {
|
|
4495
|
-
* field: 'status',
|
|
4496
|
-
* metrics: [
|
|
4497
|
-
* { field: '*', operation: 'count', as: 'count' },
|
|
4498
|
-
* { field: 'price', operation: 'sum', as: 'value' },
|
|
4499
|
-
* ]
|
|
4500
|
-
* }
|
|
4501
|
-
* ```
|
|
4502
|
-
*/
|
|
4503
|
-
interface GroupByDefinition {
|
|
4504
|
-
/** Field to group by */
|
|
4505
|
-
field: string;
|
|
4506
|
-
/** Metrics to compute per group */
|
|
4507
|
-
metrics: MetricDefinition[];
|
|
4508
|
-
}
|
|
4509
|
-
/**
|
|
4510
|
-
* Aggregation configuration for entity analytics
|
|
4511
|
-
*
|
|
4512
|
-
* @example
|
|
4513
|
-
* ```typescript
|
|
4514
|
-
* const carsAnalyticsConfig: AggregateConfig = {
|
|
4515
|
-
* metrics: [
|
|
4516
|
-
* { field: '*', operation: 'count', as: 'total' },
|
|
4517
|
-
* { field: 'price', operation: 'sum', as: 'totalValue' },
|
|
4518
|
-
* { field: 'price', operation: 'avg', as: 'avgPrice' },
|
|
4519
|
-
* ],
|
|
4520
|
-
* groupBy: [
|
|
4521
|
-
* {
|
|
4522
|
-
* field: 'status',
|
|
4523
|
-
* metrics: [
|
|
4524
|
-
* { field: '*', operation: 'count', as: 'count' },
|
|
4525
|
-
* { field: 'price', operation: 'sum', as: 'value' },
|
|
4526
|
-
* ],
|
|
4527
|
-
* },
|
|
4528
|
-
* ],
|
|
4529
|
-
* where: [['isActive', '==', true]],
|
|
4530
|
-
* };
|
|
4531
|
-
* ```
|
|
4532
|
-
*/
|
|
4533
|
-
interface AggregateConfig {
|
|
4534
|
-
/** Top-level metrics (computed on entire collection) */
|
|
4535
|
-
metrics?: MetricDefinition[];
|
|
4536
|
-
/** Group by configurations */
|
|
4537
|
-
groupBy?: GroupByDefinition[];
|
|
4538
|
-
/** Optional global filters */
|
|
4539
|
-
where?: Array<[string, any, any]>;
|
|
4540
|
-
}
|
|
4541
|
-
/**
|
|
4542
|
-
* Request payload for aggregate function calls
|
|
4543
|
-
*/
|
|
4544
|
-
interface AggregateRequest {
|
|
4545
|
-
/** Optional runtime filters (merged with config filters) */
|
|
4546
|
-
where?: Array<[string, any, any]>;
|
|
4547
|
-
/** Optional date range filter */
|
|
4548
|
-
dateRange?: {
|
|
4549
|
-
field: string;
|
|
4550
|
-
start?: string;
|
|
4551
|
-
end?: string;
|
|
4552
|
-
};
|
|
4553
|
-
}
|
|
4554
|
-
/**
|
|
4555
|
-
* Response from aggregate function
|
|
4556
|
-
*/
|
|
4557
|
-
interface AggregateResponse {
|
|
4558
|
-
/** Computed top-level metrics */
|
|
4559
|
-
metrics: Record<string, number | null>;
|
|
4560
|
-
/** Grouped metrics by field */
|
|
4561
|
-
groups: Record<string, Record<string, Record<string, number | null>>>;
|
|
4562
|
-
/** Metadata about the aggregation */
|
|
4563
|
-
meta: {
|
|
4564
|
-
collection: string;
|
|
4565
|
-
totalDocs: number;
|
|
4566
|
-
computedAt: string;
|
|
4567
|
-
};
|
|
4568
|
-
}
|
|
4569
|
-
|
|
4570
4509
|
/**
|
|
4571
4510
|
* @fileoverview CRUD Constants
|
|
4572
4511
|
* @description Constants for CRUD domain. Defines visibility levels for entity fields and supported field types for entities.
|
|
@@ -4631,6 +4570,37 @@ declare const DEFAULT_ENTITY_ACCESS: {
|
|
|
4631
4570
|
* @since 0.0.1
|
|
4632
4571
|
* @author AMBROISE PARK Consulting
|
|
4633
4572
|
*/
|
|
4573
|
+
/**
|
|
4574
|
+
* Supported filter operators for query where clauses.
|
|
4575
|
+
* Use these in framework code for consistency. Consumers can use string literals
|
|
4576
|
+
* (e.g. operator: 'in') — CrudOperator accepts them; no need to import CRUD_OPERATORS.
|
|
4577
|
+
*/
|
|
4578
|
+
declare const CRUD_OPERATORS: {
|
|
4579
|
+
readonly EQ: "==";
|
|
4580
|
+
readonly NEQ: "!=";
|
|
4581
|
+
readonly LT: "<";
|
|
4582
|
+
readonly LTE: "<=";
|
|
4583
|
+
readonly GT: ">";
|
|
4584
|
+
readonly GTE: ">=";
|
|
4585
|
+
readonly IN: "in";
|
|
4586
|
+
readonly NOT_IN: "not-in";
|
|
4587
|
+
readonly ARRAY_CONTAINS: "array-contains";
|
|
4588
|
+
readonly ARRAY_CONTAINS_ANY: "array-contains-any";
|
|
4589
|
+
};
|
|
4590
|
+
/** Union of operator string literals. Consumer apps may use e.g. operator: 'in' without importing CRUD_OPERATORS. */
|
|
4591
|
+
type CrudOperator = (typeof CRUD_OPERATORS)[keyof typeof CRUD_OPERATORS];
|
|
4592
|
+
/** Order direction for query orderBy */
|
|
4593
|
+
declare const ORDER_DIRECTION: {
|
|
4594
|
+
readonly ASC: "asc";
|
|
4595
|
+
readonly DESC: "desc";
|
|
4596
|
+
};
|
|
4597
|
+
type OrderDirection = (typeof ORDER_DIRECTION)[keyof typeof ORDER_DIRECTION];
|
|
4598
|
+
/** Schema type for list queries (list vs listCard) */
|
|
4599
|
+
declare const LIST_SCHEMA_TYPE: {
|
|
4600
|
+
readonly LIST: "list";
|
|
4601
|
+
readonly LIST_CARD: "listCard";
|
|
4602
|
+
};
|
|
4603
|
+
type ListSchemaType = (typeof LIST_SCHEMA_TYPE)[keyof typeof LIST_SCHEMA_TYPE];
|
|
4634
4604
|
declare const FIELD_TYPES: readonly ["address", "array", "avatar", "badge", "boolean", "checkbox", "color", "combobox", "date", "datetime-local", "document", "documents", "duration", "email", "file", "files", "gdprConsent", "geopoint", "hidden", "iban", "image", "images", "map", "month", "multiselect", "number", "currency", "price", "password", "radio", "reference", "range", "rating", "reset", "richtext", "select", "submit", "switch", "tel", "text", "textarea", "time", "timestamp", "url", "week", "year"];
|
|
4635
4605
|
|
|
4636
4606
|
/**
|
|
@@ -4747,16 +4717,44 @@ interface EntityOwnershipConfig {
|
|
|
4747
4717
|
* @since 0.0.1
|
|
4748
4718
|
* @author AMBROISE PARK Consulting
|
|
4749
4719
|
*/
|
|
4750
|
-
type FieldType = (typeof FIELD_TYPES)[number];
|
|
4720
|
+
type FieldType = (typeof FIELD_TYPES)[number] | (string & {});
|
|
4721
|
+
/**
|
|
4722
|
+
* Built-in field type union (same as FieldType). Used internally to distinguish
|
|
4723
|
+
* framework field types from custom types registered via registerFieldType().
|
|
4724
|
+
*/
|
|
4725
|
+
type BuiltInFieldType = (typeof FIELD_TYPES)[number];
|
|
4726
|
+
/**
|
|
4727
|
+
* Map of custom field type names to their option shapes for `options.fieldSpecific`.
|
|
4728
|
+
* Augment this interface in your app so entity definitions get typed options for custom types.
|
|
4729
|
+
*
|
|
4730
|
+
* @example
|
|
4731
|
+
* ```ts
|
|
4732
|
+
* // In your app (e.g. types/crud.d.ts or next to your entity):
|
|
4733
|
+
* import '@donotdev/core';
|
|
4734
|
+
* declare module '@donotdev/core' {
|
|
4735
|
+
* interface CustomFieldOptionsMap {
|
|
4736
|
+
* 'custom-address': { extractZipCode?: boolean };
|
|
4737
|
+
* 'repairOperations': { maxItems?: number };
|
|
4738
|
+
* }
|
|
4739
|
+
* }
|
|
4740
|
+
* ```
|
|
4741
|
+
* Then in entity fields: `type: 'custom-address'`, `options: { fieldSpecific: { extractZipCode: true } }` is type-checked.
|
|
4742
|
+
*
|
|
4743
|
+
* @version 0.0.1
|
|
4744
|
+
* @since 0.0.1
|
|
4745
|
+
* @author AMBROISE PARK Consulting
|
|
4746
|
+
*/
|
|
4747
|
+
interface CustomFieldOptionsMap {
|
|
4748
|
+
}
|
|
4751
4749
|
/**
|
|
4752
4750
|
* Additional UI-specific options for field rendering
|
|
4753
|
-
* @template T - The field type
|
|
4751
|
+
* @template T - The field type (built-in or custom string). Custom types use CustomFieldOptionsMap for fieldSpecific.
|
|
4754
4752
|
*
|
|
4755
4753
|
* @version 0.0.1
|
|
4756
4754
|
* @since 0.0.1
|
|
4757
4755
|
* @author AMBROISE PARK Consulting
|
|
4758
4756
|
*/
|
|
4759
|
-
interface UIFieldOptions<T extends
|
|
4757
|
+
interface UIFieldOptions<T extends string = FieldType> {
|
|
4760
4758
|
/** The section under which this field should be grouped */
|
|
4761
4759
|
section?: string;
|
|
4762
4760
|
/** Placeholder text */
|
|
@@ -4780,16 +4778,30 @@ interface UIFieldOptions<T extends FieldType = FieldType> {
|
|
|
4780
4778
|
};
|
|
4781
4779
|
/** Step value for numeric inputs */
|
|
4782
4780
|
step?: T extends 'number' | 'range' ? number : never;
|
|
4781
|
+
/**
|
|
4782
|
+
* Unit string appended directly to the value (no space).
|
|
4783
|
+
* Non-translatable literal — use for symbols like 'm²', '€', 'kg', '%'.
|
|
4784
|
+
* @example `unit: 'm²'` → "20m²"
|
|
4785
|
+
*/
|
|
4786
|
+
unit?: T extends 'number' | 'range' | 'year' ? string : never;
|
|
4787
|
+
/**
|
|
4788
|
+
* i18n key resolved via t() and appended after the value+unit with a space.
|
|
4789
|
+
* Use for locale-specific suffixes like "charges comprises" / "all included".
|
|
4790
|
+
* @example `suffix: 'fields.rent_suffix'` → "700€ charges comprises"
|
|
4791
|
+
*/
|
|
4792
|
+
suffix?: T extends 'number' | 'range' | 'year' ? string : never;
|
|
4783
4793
|
/** Whether to show value label for range inputs */
|
|
4784
4794
|
showValue?: T extends 'range' ? boolean : never;
|
|
4785
|
-
/** Field specific options based on field type */
|
|
4786
|
-
fieldSpecific?: T extends 'file' | 'image' ? {
|
|
4795
|
+
/** Field specific options based on field type. Custom types: augment CustomFieldOptionsMap. */
|
|
4796
|
+
fieldSpecific?: T extends keyof CustomFieldOptionsMap ? CustomFieldOptionsMap[T] : T extends 'file' | 'image' | 'files' | 'images' | 'document' | 'documents' ? {
|
|
4787
4797
|
/** File types to accept (e.g., 'image/*', '.pdf') */
|
|
4788
4798
|
accept?: string;
|
|
4789
4799
|
/** Maximum file size in bytes */
|
|
4790
4800
|
maxSize?: number;
|
|
4791
4801
|
/** Whether to allow multiple files */
|
|
4792
4802
|
multiple?: boolean;
|
|
4803
|
+
/** Storage path prefix for uploads (e.g., 'apartments') */
|
|
4804
|
+
storagePath?: string;
|
|
4793
4805
|
} : T extends 'geopoint' ? {
|
|
4794
4806
|
/** Default zoom level for map */
|
|
4795
4807
|
defaultZoom?: number;
|
|
@@ -4944,7 +4956,7 @@ type FieldTypeToValue = {
|
|
|
4944
4956
|
* @since 0.0.1
|
|
4945
4957
|
* @author AMBROISE PARK Consulting
|
|
4946
4958
|
*/
|
|
4947
|
-
type ValueTypeForField<T extends
|
|
4959
|
+
type ValueTypeForField<T extends string> = T extends keyof FieldTypeToValue ? FieldTypeToValue[T] : unknown;
|
|
4948
4960
|
/**
|
|
4949
4961
|
* Any valid field value - includes built-in types plus custom registered types
|
|
4950
4962
|
* Uses `unknown` since consumers can register custom field types via RegisterFieldType
|
|
@@ -4989,7 +5001,7 @@ type EntityRecord = Record<string, AnyFieldValue>;
|
|
|
4989
5001
|
* @since 0.0.1
|
|
4990
5002
|
* @author AMBROISE PARK Consulting
|
|
4991
5003
|
*/
|
|
4992
|
-
interface ValidationRules<T extends
|
|
5004
|
+
interface ValidationRules<T extends string = FieldType> {
|
|
4993
5005
|
/** Whether the field is required */
|
|
4994
5006
|
required?: boolean;
|
|
4995
5007
|
/** Minimum value (for number fields) */
|
|
@@ -5210,7 +5222,7 @@ interface FormConfig {
|
|
|
5210
5222
|
* @since 0.0.1
|
|
5211
5223
|
* @author AMBROISE PARK Consulting
|
|
5212
5224
|
*/
|
|
5213
|
-
interface EntityField<T extends
|
|
5225
|
+
interface EntityField<T extends string = FieldType> {
|
|
5214
5226
|
/** Field identifier - required for form binding */
|
|
5215
5227
|
name: string;
|
|
5216
5228
|
/** The field type, which determines the UI component and validation */
|
|
@@ -5320,7 +5332,7 @@ interface UniqueKeyDefinition {
|
|
|
5320
5332
|
fields: string[];
|
|
5321
5333
|
/** Custom error message when duplicate is found */
|
|
5322
5334
|
errorMessage?: string;
|
|
5323
|
-
/** Skip validation for draft documents (default:
|
|
5335
|
+
/** Skip validation for draft documents (default: false) */
|
|
5324
5336
|
skipForDrafts?: boolean;
|
|
5325
5337
|
/**
|
|
5326
5338
|
* Return existing document instead of throwing error on duplicate (default: false)
|
|
@@ -5328,6 +5340,63 @@ interface UniqueKeyDefinition {
|
|
|
5328
5340
|
*/
|
|
5329
5341
|
findOrCreate?: boolean;
|
|
5330
5342
|
}
|
|
5343
|
+
/**
|
|
5344
|
+
* SOC2 security configuration for an entity.
|
|
5345
|
+
* Zero-config path: omit this entirely for MVP — add it when going to production/SOC2 audit.
|
|
5346
|
+
*
|
|
5347
|
+
* When a `SecurityContext` is passed to `CrudService`, these options control:
|
|
5348
|
+
* - Which fields are encrypted at rest (PII)
|
|
5349
|
+
* - Whether CRUD mutations are audit-logged (default: true)
|
|
5350
|
+
* - Entity-level rate limit overrides
|
|
5351
|
+
* - MFA requirement for a given role tier
|
|
5352
|
+
* - Data retention for automated purge scheduling
|
|
5353
|
+
*
|
|
5354
|
+
* @example
|
|
5355
|
+
* ```typescript
|
|
5356
|
+
* security: {
|
|
5357
|
+
* piiFields: ['email', 'phone', 'ssn'],
|
|
5358
|
+
* requireMfa: 'admin',
|
|
5359
|
+
* retention: { days: 365 },
|
|
5360
|
+
* }
|
|
5361
|
+
* ```
|
|
5362
|
+
*
|
|
5363
|
+
* @version 0.0.1
|
|
5364
|
+
* @since 0.0.1
|
|
5365
|
+
* @author AMBROISE PARK Consulting
|
|
5366
|
+
*/
|
|
5367
|
+
interface SecurityEntityConfig {
|
|
5368
|
+
/**
|
|
5369
|
+
* Field names to encrypt at rest using AES-256-GCM.
|
|
5370
|
+
* Requires `piiSecret` in `DndevSecurityConfig`.
|
|
5371
|
+
* Only string field values are encrypted; other types are skipped silently.
|
|
5372
|
+
*/
|
|
5373
|
+
piiFields?: string[];
|
|
5374
|
+
/**
|
|
5375
|
+
* Whether to emit audit log entries for all CRUD mutations on this entity.
|
|
5376
|
+
* @default true (when SecurityContext is provided)
|
|
5377
|
+
*/
|
|
5378
|
+
auditLog?: boolean;
|
|
5379
|
+
/**
|
|
5380
|
+
* Override rate limits for this entity (uses global defaults if omitted).
|
|
5381
|
+
*/
|
|
5382
|
+
rateLimit?: {
|
|
5383
|
+
writes?: number;
|
|
5384
|
+
reads?: number;
|
|
5385
|
+
windowSeconds?: number;
|
|
5386
|
+
};
|
|
5387
|
+
/**
|
|
5388
|
+
* Enforce MFA for users at or above this role attempting mutations.
|
|
5389
|
+
* The adapter must verify MFA status from the auth token/session.
|
|
5390
|
+
*/
|
|
5391
|
+
requireMfa?: UserRole;
|
|
5392
|
+
/**
|
|
5393
|
+
* Data retention policy — documents older than `days` are flagged for purge.
|
|
5394
|
+
* Integrate with `PrivacyManager.shouldPurge()` in a scheduled function.
|
|
5395
|
+
*/
|
|
5396
|
+
retention?: {
|
|
5397
|
+
days: number;
|
|
5398
|
+
};
|
|
5399
|
+
}
|
|
5331
5400
|
/**
|
|
5332
5401
|
* Multi-tenancy scope configuration for entities
|
|
5333
5402
|
* Enables automatic scoping of data by tenant/company/workspace
|
|
@@ -5364,6 +5433,26 @@ interface ScopeConfig {
|
|
|
5364
5433
|
*/
|
|
5365
5434
|
collection?: string;
|
|
5366
5435
|
}
|
|
5436
|
+
/**
|
|
5437
|
+
* Slot-based card layout for listCardFields.
|
|
5438
|
+
* Maps entity field names to card slots (title, subtitle, content, footer).
|
|
5439
|
+
*/
|
|
5440
|
+
interface ListCardLayout {
|
|
5441
|
+
/** Fields rendered as the card title (joined with titleSeparator) */
|
|
5442
|
+
title?: string[];
|
|
5443
|
+
/**
|
|
5444
|
+
* Separator used to join multiple title field values.
|
|
5445
|
+
* @default ' '
|
|
5446
|
+
* @example `titleSeparator: ' - '` → "Paris 20e arr. - 20m²"
|
|
5447
|
+
*/
|
|
5448
|
+
titleSeparator?: string;
|
|
5449
|
+
/** Fields rendered as the card subtitle */
|
|
5450
|
+
subtitle?: string[];
|
|
5451
|
+
/** Fields rendered in the card body (supports images) */
|
|
5452
|
+
content?: string[];
|
|
5453
|
+
/** Fields rendered in the card footer */
|
|
5454
|
+
footer?: string[];
|
|
5455
|
+
}
|
|
5367
5456
|
/**
|
|
5368
5457
|
* Definition of a business entity without base fields
|
|
5369
5458
|
*
|
|
@@ -5424,17 +5513,33 @@ interface BusinessEntity {
|
|
|
5424
5513
|
*/
|
|
5425
5514
|
listFields?: string[];
|
|
5426
5515
|
/**
|
|
5427
|
-
* Fields to include in public card list responses
|
|
5428
|
-
*
|
|
5429
|
-
*
|
|
5430
|
-
*
|
|
5516
|
+
* Fields to include in public card list responses.
|
|
5517
|
+
* Accepts a flat array (auto-layout) or a slot-based `ListCardLayout` object.
|
|
5518
|
+
*
|
|
5519
|
+
* Each field value is formatted via `formatValue()` using its registered display formatter.
|
|
5520
|
+
* For `'number'` fields, use `unit` and `suffix` field options for rich display — no custom
|
|
5521
|
+
* type needed:
|
|
5522
|
+
* - `unit: 'm²'` → "20m²" (appended directly, no space)
|
|
5523
|
+
* - `suffix: 'fields.rent_suffix'` → "700€ charges comprises" (i18n key, space-separated)
|
|
5524
|
+
*
|
|
5525
|
+
* Use `titleSeparator` in `ListCardLayout` to control how multiple title fields are joined
|
|
5526
|
+
* (default `' '`).
|
|
5431
5527
|
*
|
|
5432
5528
|
* @example
|
|
5433
5529
|
* ```typescript
|
|
5530
|
+
* // Flat — auto-slots first field as title, rest as content
|
|
5434
5531
|
* listCardFields: ['images', 'make', 'price', 'year']
|
|
5532
|
+
*
|
|
5533
|
+
* // Slot-based — explicit card layout with separator
|
|
5534
|
+
* listCardFields: {
|
|
5535
|
+
* titleSeparator: ' - ',
|
|
5536
|
+
* title: ['district_code', 'size'], // e.g. "Paris 20e arr. - 20m²"
|
|
5537
|
+
* subtitle: ['rent'], // e.g. "700€ charges comprises"
|
|
5538
|
+
* content: ['pictures', 'nearby_stations'],
|
|
5539
|
+
* }
|
|
5435
5540
|
* ```
|
|
5436
5541
|
*/
|
|
5437
|
-
listCardFields?: string[];
|
|
5542
|
+
listCardFields?: string[] | ListCardLayout;
|
|
5438
5543
|
/**
|
|
5439
5544
|
* Entity-level access control configuration.
|
|
5440
5545
|
* Defines minimum role required for each CRUD operation.
|
|
@@ -5475,6 +5580,21 @@ interface BusinessEntity {
|
|
|
5475
5580
|
* ```
|
|
5476
5581
|
*/
|
|
5477
5582
|
uniqueKeys?: UniqueKeyDefinition[];
|
|
5583
|
+
/**
|
|
5584
|
+
* SOC2 security configuration for this entity (optional — zero-config MVP path).
|
|
5585
|
+
* When a `SecurityContext` is provided to `CrudService`, these settings control
|
|
5586
|
+
* PII encryption, audit logging, rate limits, MFA enforcement, and retention.
|
|
5587
|
+
*
|
|
5588
|
+
* @example
|
|
5589
|
+
* ```typescript
|
|
5590
|
+
* security: {
|
|
5591
|
+
* piiFields: ['email', 'phone'],
|
|
5592
|
+
* requireMfa: 'admin',
|
|
5593
|
+
* retention: { days: 365 },
|
|
5594
|
+
* }
|
|
5595
|
+
* ```
|
|
5596
|
+
*/
|
|
5597
|
+
security?: SecurityEntityConfig;
|
|
5478
5598
|
}
|
|
5479
5599
|
/**
|
|
5480
5600
|
* Complete entity definition including base fields
|
|
@@ -5624,7 +5744,7 @@ declare const listEntitiesSchema: v.ObjectSchema<{
|
|
|
5624
5744
|
readonly where: v.OptionalSchema<v.ArraySchema<v.ObjectSchema<{
|
|
5625
5745
|
readonly field: v.StringSchema<undefined>;
|
|
5626
5746
|
readonly operator: v.PicklistSchema<["==", "!=", "<", "<=", ">", ">=", "array-contains", "in", "not-in"], undefined>;
|
|
5627
|
-
readonly value: v.
|
|
5747
|
+
readonly value: v.UnknownSchema;
|
|
5628
5748
|
}, undefined>, undefined>, undefined>;
|
|
5629
5749
|
}, undefined>;
|
|
5630
5750
|
/**
|
|
@@ -5728,26 +5848,264 @@ interface ListEntitiesResponse {
|
|
|
5728
5848
|
}
|
|
5729
5849
|
|
|
5730
5850
|
/**
|
|
5731
|
-
* @fileoverview CRUD
|
|
5732
|
-
* @description
|
|
5851
|
+
* @fileoverview CRUD Adapter Interface
|
|
5852
|
+
* @description Provider-agnostic interface for CRUD data access.
|
|
5853
|
+
* Any backend (Firestore, Supabase, REST, Postgres) must implement this contract.
|
|
5733
5854
|
*
|
|
5734
5855
|
* @version 0.0.1
|
|
5735
|
-
* @since 0.0
|
|
5856
|
+
* @since 0.5.0
|
|
5736
5857
|
* @author AMBROISE PARK Consulting
|
|
5737
5858
|
*/
|
|
5738
5859
|
|
|
5739
|
-
|
|
5740
|
-
|
|
5741
|
-
|
|
5742
|
-
|
|
5743
|
-
|
|
5860
|
+
/** Single where clause for a query. operator accepts CrudOperator or string so consumer code can use variables or literals ('in', '==', etc.) without importing CRUD_OPERATORS. */
|
|
5861
|
+
interface QueryWhereClause {
|
|
5862
|
+
field: string;
|
|
5863
|
+
operator: CrudOperator;
|
|
5864
|
+
value: unknown;
|
|
5865
|
+
}
|
|
5866
|
+
/** Order-by clause for a query. direction accepts 'asc' | 'desc' or string so consumer code can use variables. */
|
|
5867
|
+
interface QueryOrderBy {
|
|
5868
|
+
field: string;
|
|
5869
|
+
direction?: OrderDirection;
|
|
5870
|
+
}
|
|
5871
|
+
/**
|
|
5872
|
+
* Query options for collection queries.
|
|
5873
|
+
* Provider-agnostic — each adapter maps these to its native query API.
|
|
5874
|
+
*/
|
|
5875
|
+
interface QueryOptions$1 {
|
|
5876
|
+
where?: QueryWhereClause[];
|
|
5877
|
+
orderBy?: QueryOrderBy[];
|
|
5878
|
+
limit?: number;
|
|
5879
|
+
/** Opaque cursor for pagination — value of the first orderBy field from the previous page's lastVisible */
|
|
5880
|
+
startAfter?: string | null;
|
|
5881
|
+
}
|
|
5882
|
+
/**
|
|
5883
|
+
* Paginated query result returned by adapter.query().
|
|
5884
|
+
* @template T - The entity type
|
|
5885
|
+
*/
|
|
5886
|
+
interface PaginatedQueryResult<T> {
|
|
5887
|
+
items: T[];
|
|
5888
|
+
total?: number;
|
|
5889
|
+
hasMore?: boolean;
|
|
5890
|
+
/** Opaque cursor for the next page */
|
|
5891
|
+
lastVisible?: string | null;
|
|
5892
|
+
}
|
|
5893
|
+
/** Callback for single-document subscriptions */
|
|
5894
|
+
type DocumentSubscriptionCallback<T> = (data: T | null, error?: Error) => void;
|
|
5895
|
+
/** Callback for collection subscriptions */
|
|
5896
|
+
type CollectionSubscriptionCallback<T> = (data: T[], error?: Error) => void;
|
|
5897
|
+
/**
|
|
5898
|
+
* Provider-agnostic CRUD adapter interface.
|
|
5899
|
+
*
|
|
5900
|
+
* Implementations:
|
|
5901
|
+
* - `FirestoreAdapter` (Firestore direct)
|
|
5902
|
+
* - `FunctionsAdapter` (Firebase callable functions)
|
|
5903
|
+
* - Future: Supabase, REST, Postgres adapters
|
|
5904
|
+
*
|
|
5905
|
+
* @template All methods accept `dndevSchema` for validation/transformation.
|
|
5906
|
+
* Adapters that don't need schema can ignore it.
|
|
5907
|
+
*
|
|
5908
|
+
* @version 0.0.1
|
|
5909
|
+
* @since 0.5.0
|
|
5910
|
+
*/
|
|
5911
|
+
interface ICrudAdapter {
|
|
5744
5912
|
/**
|
|
5745
|
-
*
|
|
5746
|
-
*
|
|
5913
|
+
* When true, this adapter enforces field-level security server-side.
|
|
5914
|
+
* Only server-side adapters may access entities with restricted field visibility.
|
|
5915
|
+
* Defaults to false (direct/client-side adapters).
|
|
5747
5916
|
*/
|
|
5748
|
-
|
|
5917
|
+
readonly serverSideOnly?: boolean;
|
|
5749
5918
|
/**
|
|
5750
|
-
*
|
|
5919
|
+
* When true, field-level and row-level security is enforced at the database layer
|
|
5920
|
+
* (e.g. Supabase RLS + column grants). The framework visibility gate is bypassed
|
|
5921
|
+
* because the DB rejects unauthorized reads before any data leaves the server.
|
|
5922
|
+
*
|
|
5923
|
+
* **Supabase:** requires RLS enabled on every table + column-level grants per role.
|
|
5924
|
+
* **Firestore:** Rules are row-level only — field-level filtering needs FunctionsAdapter.
|
|
5925
|
+
*/
|
|
5926
|
+
readonly dbLevelSecurity?: boolean;
|
|
5927
|
+
/** Fetch a single document by ID. Returns null if not found. */
|
|
5928
|
+
get<T>(collection: string, id: string, schema?: dndevSchema<unknown>): Promise<T | null>;
|
|
5929
|
+
/** Create a new document with auto-generated ID. Returns the ID + parsed data. */
|
|
5930
|
+
add<T>(collection: string, data: T, schema?: dndevSchema<T>): Promise<{
|
|
5931
|
+
id: string;
|
|
5932
|
+
data: Record<string, unknown>;
|
|
5933
|
+
}>;
|
|
5934
|
+
/** Set/replace a document by ID (upsert semantics). */
|
|
5935
|
+
set<T>(collection: string, id: string, data: T, schema?: dndevSchema<T>): Promise<void>;
|
|
5936
|
+
/** Partial update a document by ID. */
|
|
5937
|
+
update<T>(collection: string, id: string, data: Partial<T>): Promise<void>;
|
|
5938
|
+
/** Delete a document by ID. */
|
|
5939
|
+
delete(collection: string, id: string): Promise<void>;
|
|
5940
|
+
/** Query a collection with filters, ordering, and pagination. schemaType accepts 'list' | 'listCard' or string. */
|
|
5941
|
+
query<T>(collection: string, options: QueryOptions$1, schema?: dndevSchema<unknown>, schemaType?: ListSchemaType | string): Promise<PaginatedQueryResult<T>>;
|
|
5942
|
+
/**
|
|
5943
|
+
* Subscribe to real-time changes on a single document.
|
|
5944
|
+
* Optional — adapters that don't support real-time can throw or return a no-op unsubscribe.
|
|
5945
|
+
*/
|
|
5946
|
+
subscribe?<T>(collection: string, id: string, callback: DocumentSubscriptionCallback<T>, schema?: dndevSchema<unknown>): () => void;
|
|
5947
|
+
/**
|
|
5948
|
+
* Subscribe to real-time changes on a collection query.
|
|
5949
|
+
* Optional — adapters that don't support real-time can throw or return a no-op unsubscribe.
|
|
5950
|
+
*/
|
|
5951
|
+
subscribeToCollection?<T>(collection: string, options: QueryOptions$1, callback: CollectionSubscriptionCallback<T>, schema?: dndevSchema<unknown>): () => void;
|
|
5952
|
+
}
|
|
5953
|
+
|
|
5954
|
+
/** Supported aggregation operations */
|
|
5955
|
+
declare const AGGREGATE_OPERATIONS: {
|
|
5956
|
+
readonly COUNT: "count";
|
|
5957
|
+
readonly SUM: "sum";
|
|
5958
|
+
readonly AVG: "avg";
|
|
5959
|
+
readonly MIN: "min";
|
|
5960
|
+
readonly MAX: "max";
|
|
5961
|
+
};
|
|
5962
|
+
type AggregateOperation = (typeof AGGREGATE_OPERATIONS)[keyof typeof AGGREGATE_OPERATIONS];
|
|
5963
|
+
/** Filter operators for aggregation (subset of CRUD_OPERATORS) */
|
|
5964
|
+
declare const AGGREGATE_FILTER_OPERATORS: {
|
|
5965
|
+
readonly EQ: "==";
|
|
5966
|
+
readonly NEQ: "!=";
|
|
5967
|
+
readonly LT: "<";
|
|
5968
|
+
readonly LTE: "<=";
|
|
5969
|
+
readonly GT: ">";
|
|
5970
|
+
readonly GTE: ">=";
|
|
5971
|
+
};
|
|
5972
|
+
type AggregateFilterOperator = (typeof AGGREGATE_FILTER_OPERATORS)[keyof typeof AGGREGATE_FILTER_OPERATORS];
|
|
5973
|
+
/**
|
|
5974
|
+
* Single metric definition for aggregation
|
|
5975
|
+
*
|
|
5976
|
+
* @example
|
|
5977
|
+
* ```typescript
|
|
5978
|
+
* // Count all documents
|
|
5979
|
+
* { field: '*', operation: 'count', as: 'total' }
|
|
5980
|
+
*
|
|
5981
|
+
* // Sum a numeric field
|
|
5982
|
+
* { field: 'price', operation: 'sum', as: 'totalValue' }
|
|
5983
|
+
*
|
|
5984
|
+
* // Count with filter
|
|
5985
|
+
* {
|
|
5986
|
+
* field: '*',
|
|
5987
|
+
* operation: 'count',
|
|
5988
|
+
* as: 'availableCount',
|
|
5989
|
+
* filter: { field: 'status', operator: '==', value: 'available' }
|
|
5990
|
+
* }
|
|
5991
|
+
* ```
|
|
5992
|
+
*/
|
|
5993
|
+
interface MetricDefinition {
|
|
5994
|
+
/** Field to aggregate ('*' for count all) */
|
|
5995
|
+
field: string;
|
|
5996
|
+
/** Aggregation operation */
|
|
5997
|
+
operation: AggregateOperation;
|
|
5998
|
+
/** Output name for this metric */
|
|
5999
|
+
as: string;
|
|
6000
|
+
/** Optional filter for this metric */
|
|
6001
|
+
filter?: {
|
|
6002
|
+
field: string;
|
|
6003
|
+
operator: AggregateFilterOperator;
|
|
6004
|
+
value: any;
|
|
6005
|
+
};
|
|
6006
|
+
}
|
|
6007
|
+
/**
|
|
6008
|
+
* Group by definition for aggregation
|
|
6009
|
+
*
|
|
6010
|
+
* @example
|
|
6011
|
+
* ```typescript
|
|
6012
|
+
* {
|
|
6013
|
+
* field: 'status',
|
|
6014
|
+
* metrics: [
|
|
6015
|
+
* { field: '*', operation: 'count', as: 'count' },
|
|
6016
|
+
* { field: 'price', operation: 'sum', as: 'value' },
|
|
6017
|
+
* ]
|
|
6018
|
+
* }
|
|
6019
|
+
* ```
|
|
6020
|
+
*/
|
|
6021
|
+
interface GroupByDefinition {
|
|
6022
|
+
/** Field to group by */
|
|
6023
|
+
field: string;
|
|
6024
|
+
/** Metrics to compute per group */
|
|
6025
|
+
metrics: MetricDefinition[];
|
|
6026
|
+
}
|
|
6027
|
+
/**
|
|
6028
|
+
* Aggregation configuration for entity analytics
|
|
6029
|
+
*
|
|
6030
|
+
* @example
|
|
6031
|
+
* ```typescript
|
|
6032
|
+
* const carsAnalyticsConfig: AggregateConfig = {
|
|
6033
|
+
* metrics: [
|
|
6034
|
+
* { field: '*', operation: 'count', as: 'total' },
|
|
6035
|
+
* { field: 'price', operation: 'sum', as: 'totalValue' },
|
|
6036
|
+
* { field: 'price', operation: 'avg', as: 'avgPrice' },
|
|
6037
|
+
* ],
|
|
6038
|
+
* groupBy: [
|
|
6039
|
+
* {
|
|
6040
|
+
* field: 'status',
|
|
6041
|
+
* metrics: [
|
|
6042
|
+
* { field: '*', operation: 'count', as: 'count' },
|
|
6043
|
+
* { field: 'price', operation: 'sum', as: 'value' },
|
|
6044
|
+
* ],
|
|
6045
|
+
* },
|
|
6046
|
+
* ],
|
|
6047
|
+
* where: [['isActive', '==', true]],
|
|
6048
|
+
* };
|
|
6049
|
+
* ```
|
|
6050
|
+
*/
|
|
6051
|
+
interface AggregateConfig {
|
|
6052
|
+
/** Top-level metrics (computed on entire collection) */
|
|
6053
|
+
metrics?: MetricDefinition[];
|
|
6054
|
+
/** Group by configurations */
|
|
6055
|
+
groupBy?: GroupByDefinition[];
|
|
6056
|
+
/** Optional global filters */
|
|
6057
|
+
where?: Array<[string, AggregateFilterOperator | string, unknown]>;
|
|
6058
|
+
}
|
|
6059
|
+
/**
|
|
6060
|
+
* Request payload for aggregate function calls
|
|
6061
|
+
*/
|
|
6062
|
+
interface AggregateRequest {
|
|
6063
|
+
/** Optional runtime filters (merged with config filters) */
|
|
6064
|
+
where?: Array<[string, AggregateFilterOperator | string, unknown]>;
|
|
6065
|
+
/** Optional date range filter */
|
|
6066
|
+
dateRange?: {
|
|
6067
|
+
field: string;
|
|
6068
|
+
start?: string;
|
|
6069
|
+
end?: string;
|
|
6070
|
+
};
|
|
6071
|
+
}
|
|
6072
|
+
/**
|
|
6073
|
+
* Response from aggregate function
|
|
6074
|
+
*/
|
|
6075
|
+
interface AggregateResponse {
|
|
6076
|
+
/** Computed top-level metrics */
|
|
6077
|
+
metrics: Record<string, number | null>;
|
|
6078
|
+
/** Grouped metrics by field */
|
|
6079
|
+
groups: Record<string, Record<string, Record<string, number | null>>>;
|
|
6080
|
+
/** Metadata about the aggregation */
|
|
6081
|
+
meta: {
|
|
6082
|
+
collection: string;
|
|
6083
|
+
totalDocs: number;
|
|
6084
|
+
computedAt: string;
|
|
6085
|
+
};
|
|
6086
|
+
}
|
|
6087
|
+
|
|
6088
|
+
/**
|
|
6089
|
+
* @fileoverview CRUD Component Props Types
|
|
6090
|
+
* @description Shared prop types for CRUD components used across UI, Templates, and CRUD packages
|
|
6091
|
+
*
|
|
6092
|
+
* @version 0.0.1
|
|
6093
|
+
* @since 0.0.1
|
|
6094
|
+
* @author AMBROISE PARK Consulting
|
|
6095
|
+
*/
|
|
6096
|
+
|
|
6097
|
+
interface EntityListProps {
|
|
6098
|
+
/** The entity definition */
|
|
6099
|
+
entity: Entity;
|
|
6100
|
+
/** Current user role (for UI toggle only - backend enforces security) */
|
|
6101
|
+
userRole?: string;
|
|
6102
|
+
/**
|
|
6103
|
+
* Base path for view/edit/create. Default: `/${collection}`.
|
|
6104
|
+
* View/Edit = `${basePath}/${id}`, Create = `${basePath}/new`.
|
|
6105
|
+
*/
|
|
6106
|
+
basePath?: string;
|
|
6107
|
+
/**
|
|
6108
|
+
* Called when user clicks a row. If provided, overrides default navigation to basePath/:id (e.g. open sheet).
|
|
5751
6109
|
*/
|
|
5752
6110
|
onClick?: (id: string) => void;
|
|
5753
6111
|
/** Hide filters section (default: false) */
|
|
@@ -5792,9 +6150,80 @@ interface EntityCardListProps {
|
|
|
5792
6150
|
/** Cache stale time is ms - defaults to 30 mins */
|
|
5793
6151
|
staleTime?: number;
|
|
5794
6152
|
/** Optional filter function to filter items client-side */
|
|
5795
|
-
filter?: (item:
|
|
6153
|
+
filter?: (item: Record<string, unknown> & {
|
|
6154
|
+
id: string;
|
|
6155
|
+
}) => boolean;
|
|
5796
6156
|
/** Hide filters section (default: false) */
|
|
5797
6157
|
hideFilters?: boolean;
|
|
6158
|
+
/**
|
|
6159
|
+
* Custom label for the results section title.
|
|
6160
|
+
* Receives the current item count so you can handle pluralization and empty state.
|
|
6161
|
+
* When not provided, defaults to the built-in i18n label ("Found N occurrences").
|
|
6162
|
+
*
|
|
6163
|
+
* @param count - Number of items after all filters are applied
|
|
6164
|
+
* @returns The string to display as the results section title
|
|
6165
|
+
*
|
|
6166
|
+
* @example
|
|
6167
|
+
* ```tsx
|
|
6168
|
+
* // Simple override
|
|
6169
|
+
* <EntityCardList
|
|
6170
|
+
* entity={apartmentEntity}
|
|
6171
|
+
* resultLabel={(count) =>
|
|
6172
|
+
* count === 0
|
|
6173
|
+
* ? 'No apartments available'
|
|
6174
|
+
* : count === 1
|
|
6175
|
+
* ? 'Your future home is right here'
|
|
6176
|
+
* : `Your future home is among these ${count} apartments`
|
|
6177
|
+
* }
|
|
6178
|
+
* />
|
|
6179
|
+
* ```
|
|
6180
|
+
*/
|
|
6181
|
+
resultLabel?: (count: number) => string;
|
|
6182
|
+
/**
|
|
6183
|
+
* Tone for the filter and results Section wrappers.
|
|
6184
|
+
* Use 'base' or 'muted' when the app has an image background so sections are readable.
|
|
6185
|
+
* @default 'ghost' (transparent — inherits parent background)
|
|
6186
|
+
*/
|
|
6187
|
+
tone?: 'ghost' | 'base' | 'muted' | 'contrast' | 'accent';
|
|
6188
|
+
}
|
|
6189
|
+
/**
|
|
6190
|
+
* Props for CrudCard — presentational card built from entity + item + field slots.
|
|
6191
|
+
* Not route-aware: parent (e.g. EntityCardList) provides detailHref or onClick.
|
|
6192
|
+
* For a11y/SEO prefer detailHref so the card is wrapped in a Link.
|
|
6193
|
+
*/
|
|
6194
|
+
interface CrudCardProps {
|
|
6195
|
+
/** The list item (must have id) */
|
|
6196
|
+
item: EntityRecord & {
|
|
6197
|
+
id: string;
|
|
6198
|
+
};
|
|
6199
|
+
/** The entity definition (for entity.fields and formatting) */
|
|
6200
|
+
entity: Entity;
|
|
6201
|
+
/**
|
|
6202
|
+
* Detail page URL for this card. When provided, card is wrapped in Link for a11y/SEO.
|
|
6203
|
+
* Parent (EntityCardList) sets this to e.g. `${basePath}/${item.id}`.
|
|
6204
|
+
*/
|
|
6205
|
+
detailHref?: string;
|
|
6206
|
+
/**
|
|
6207
|
+
* Called when card is clicked. If detailHref is also set, Link handles navigation;
|
|
6208
|
+
* use onClick only when overriding (e.g. open sheet). If no detailHref, onClick is used for navigation.
|
|
6209
|
+
*/
|
|
6210
|
+
onClick?: (id: string) => void;
|
|
6211
|
+
/** Field names for card title (values joined with space) */
|
|
6212
|
+
titleFields?: string[];
|
|
6213
|
+
/** Field names for subtitle */
|
|
6214
|
+
subtitleFields?: string[];
|
|
6215
|
+
/** Field names for content body (label + value rows) */
|
|
6216
|
+
contentFields?: string[];
|
|
6217
|
+
/** Field names for footer */
|
|
6218
|
+
footerFields?: string[];
|
|
6219
|
+
/** When true, show delete button with confirm dialog */
|
|
6220
|
+
showDelete?: boolean;
|
|
6221
|
+
/** Optional actions slot (e.g. favorites heart) rendered in card corner */
|
|
6222
|
+
renderActions?: ReactNode;
|
|
6223
|
+
/** Card elevated style */
|
|
6224
|
+
elevated?: boolean;
|
|
6225
|
+
/** Optional className for the card wrapper */
|
|
6226
|
+
className?: string;
|
|
5798
6227
|
}
|
|
5799
6228
|
interface EntityFormRendererProps<T extends EntityRecord = EntityRecord> {
|
|
5800
6229
|
/** Entity definition - pass the full entity from defineEntity() */
|
|
@@ -5823,9 +6252,9 @@ interface EntityFormRendererProps<T extends EntityRecord = EntityRecord> {
|
|
|
5823
6252
|
/** Secondary button submission handler */
|
|
5824
6253
|
onSecondarySubmit?: (data: T) => void | Promise<void>;
|
|
5825
6254
|
/**
|
|
5826
|
-
* Current viewer's role for editability checks
|
|
5827
|
-
*
|
|
5828
|
-
*
|
|
6255
|
+
* Current viewer's role for editability checks.
|
|
6256
|
+
* Auto-detected from auth when not provided. Pass explicitly to override (e.g. View-As preview).
|
|
6257
|
+
* Fallback chain: prop → useAuthSafe('userRole') → 'guest'
|
|
5829
6258
|
*/
|
|
5830
6259
|
viewerRole?: string;
|
|
5831
6260
|
/**
|
|
@@ -5833,11 +6262,6 @@ interface EntityFormRendererProps<T extends EntityRecord = EntityRecord> {
|
|
|
5833
6262
|
* @default 'create' (or 'edit' if defaultValues provided)
|
|
5834
6263
|
*/
|
|
5835
6264
|
operation?: 'create' | 'edit';
|
|
5836
|
-
/**
|
|
5837
|
-
* Enable auto-save to localStorage for crash recovery.
|
|
5838
|
-
* @default true for create mode
|
|
5839
|
-
*/
|
|
5840
|
-
autoSave?: boolean;
|
|
5841
6265
|
/**
|
|
5842
6266
|
* Optional form ID for tracking loading state.
|
|
5843
6267
|
* If not provided, one will be generated automatically.
|
|
@@ -5881,6 +6305,20 @@ interface EntityFormRendererProps<T extends EntityRecord = EntityRecord> {
|
|
|
5881
6305
|
*/
|
|
5882
6306
|
hideVisibilityInfo?: boolean;
|
|
5883
6307
|
}
|
|
6308
|
+
interface EntityRecommendationsProps {
|
|
6309
|
+
/** The entity definition */
|
|
6310
|
+
entity: Entity;
|
|
6311
|
+
/** Query constraints — caller defines "related by what" (where, limit, etc.) */
|
|
6312
|
+
queryOptions: QueryOptions$1;
|
|
6313
|
+
/** Section title (e.g. "Similar apartments") */
|
|
6314
|
+
title?: string;
|
|
6315
|
+
/** Base path for card links. Default: `/${entity.collection}` */
|
|
6316
|
+
basePath?: string;
|
|
6317
|
+
/** Grid columns — default 3 */
|
|
6318
|
+
cols?: number | [number, number, number, number];
|
|
6319
|
+
/** Additional className on wrapper Section */
|
|
6320
|
+
className?: string;
|
|
6321
|
+
}
|
|
5884
6322
|
interface EntityDisplayRendererProps<T extends EntityRecord = EntityRecord> {
|
|
5885
6323
|
/** Entity definition - pass the full entity from defineEntity() */
|
|
5886
6324
|
entity: Entity;
|
|
@@ -5890,19 +6328,21 @@ interface EntityDisplayRendererProps<T extends EntityRecord = EntityRecord> {
|
|
|
5890
6328
|
t?: (key: string, options?: Record<string, unknown>) => string;
|
|
5891
6329
|
/** Additional CSS classes */
|
|
5892
6330
|
className?: string;
|
|
5893
|
-
/** Backend to use */
|
|
5894
|
-
backend?: 'firestore' | 'functions';
|
|
5895
6331
|
/** Custom loading message */
|
|
5896
6332
|
loadingMessage?: string;
|
|
5897
6333
|
/** Custom not found message */
|
|
5898
6334
|
notFoundMessage?: string;
|
|
5899
6335
|
/**
|
|
5900
|
-
* Current viewer's role for visibility checks
|
|
5901
|
-
*
|
|
5902
|
-
*
|
|
5903
|
-
* @default 'guest'
|
|
6336
|
+
* Current viewer's role for visibility checks.
|
|
6337
|
+
* Auto-detected from auth when not provided. Pass explicitly to override.
|
|
6338
|
+
* Fallback chain: prop → useAuthSafe('userRole') → 'guest'
|
|
5904
6339
|
*/
|
|
5905
6340
|
viewerRole?: string;
|
|
6341
|
+
/**
|
|
6342
|
+
* Field names to exclude from rendering.
|
|
6343
|
+
* Use when the page already displays certain fields in a custom hero/header section.
|
|
6344
|
+
*/
|
|
6345
|
+
excludeFields?: string[];
|
|
5906
6346
|
}
|
|
5907
6347
|
|
|
5908
6348
|
type FieldValues = Record<string, any>;
|
|
@@ -5958,11 +6398,11 @@ interface CrudAPI<T = unknown> {
|
|
|
5958
6398
|
showSuccessToast?: boolean;
|
|
5959
6399
|
}) => Promise<string>;
|
|
5960
6400
|
/** Query collection with filters */
|
|
5961
|
-
query: (options:
|
|
6401
|
+
query: (options: QueryOptions$1) => Promise<T[]>;
|
|
5962
6402
|
/** Subscribe to document changes */
|
|
5963
6403
|
subscribe: (id: string, callback: (data: T | null, error?: Error) => void) => () => void;
|
|
5964
6404
|
/** Subscribe to collection changes */
|
|
5965
|
-
subscribeToCollection: (options:
|
|
6405
|
+
subscribeToCollection: (options: QueryOptions$1, callback: (data: T[], error?: Error) => void) => () => void;
|
|
5966
6406
|
/** Invalidate cache for this collection (TanStack Query) */
|
|
5967
6407
|
invalidate: () => Promise<void>;
|
|
5968
6408
|
/** Whether CRUD is available and operational */
|
|
@@ -6009,35 +6449,52 @@ interface ColumnDef<T extends FieldValues> {
|
|
|
6009
6449
|
*/
|
|
6010
6450
|
/**
|
|
6011
6451
|
* Error types used throughout the DoNotDev platform
|
|
6012
|
-
*
|
|
6013
|
-
|
|
6014
|
-
|
|
6015
|
-
|
|
6016
|
-
*
|
|
6017
|
-
|
|
6018
|
-
|
|
6019
|
-
|
|
6020
|
-
|
|
6021
|
-
|
|
6022
|
-
|
|
6023
|
-
|
|
6452
|
+
* Single source of truth: const objects + derived types.
|
|
6453
|
+
*/
|
|
6454
|
+
/**
|
|
6455
|
+
* Standard error codes used within the DoNotDev platform.
|
|
6456
|
+
* Mapped to HTTP status codes or used for specific error handling logic.
|
|
6457
|
+
*/
|
|
6458
|
+
declare const ERROR_CODES: {
|
|
6459
|
+
readonly ALREADY_EXISTS: "already-exists";
|
|
6460
|
+
readonly CANCELLED: "cancelled";
|
|
6461
|
+
readonly DEADLINE_EXCEEDED: "deadline-exceeded";
|
|
6462
|
+
readonly DELETE_ACCOUNT_REQUIRES_SERVER: "DELETE_ACCOUNT_REQUIRES_SERVER";
|
|
6463
|
+
readonly INTERNAL: "internal";
|
|
6464
|
+
readonly INVALID_ARGUMENT: "invalid-argument";
|
|
6465
|
+
readonly NOT_FOUND: "not-found";
|
|
6466
|
+
readonly PERMISSION_DENIED: "permission-denied";
|
|
6467
|
+
readonly RATE_LIMIT_EXCEEDED: "rate-limit-exceeded";
|
|
6468
|
+
readonly TIMEOUT: "timeout";
|
|
6469
|
+
readonly UNAUTHENTICATED: "unauthenticated";
|
|
6470
|
+
readonly UNAVAILABLE: "unavailable";
|
|
6471
|
+
readonly UNIMPLEMENTED: "unimplemented";
|
|
6472
|
+
readonly UNKNOWN: "unknown";
|
|
6473
|
+
readonly VALIDATION_FAILED: "validation-failed";
|
|
6474
|
+
};
|
|
6475
|
+
type ErrorCode = (typeof ERROR_CODES)[keyof typeof ERROR_CODES];
|
|
6024
6476
|
/**
|
|
6025
6477
|
* Severity levels for error notifications and logging
|
|
6026
|
-
*
|
|
6027
|
-
* @version 0.0.1
|
|
6028
|
-
* @since 0.0.1
|
|
6029
|
-
* @author AMBROISE PARK Consulting
|
|
6030
6478
|
*/
|
|
6031
|
-
|
|
6479
|
+
declare const ERROR_SEVERITY: {
|
|
6480
|
+
readonly ERROR: "error";
|
|
6481
|
+
readonly WARNING: "warning";
|
|
6482
|
+
readonly INFO: "info";
|
|
6483
|
+
readonly SUCCESS: "success";
|
|
6484
|
+
};
|
|
6485
|
+
type ErrorSeverity = (typeof ERROR_SEVERITY)[keyof typeof ERROR_SEVERITY];
|
|
6032
6486
|
/**
|
|
6033
6487
|
* Error types used in entity hooks
|
|
6034
|
-
* A subset of ErrorCode that is specific to entity operations
|
|
6035
|
-
*
|
|
6036
|
-
* @version 0.0.1
|
|
6037
|
-
* @since 0.0.1
|
|
6038
|
-
* @author AMBROISE PARK Consulting
|
|
6039
6488
|
*/
|
|
6040
|
-
|
|
6489
|
+
declare const ENTITY_HOOK_ERRORS: {
|
|
6490
|
+
readonly INTERNAL_ERROR: "INTERNAL_ERROR";
|
|
6491
|
+
readonly VALIDATION_ERROR: "VALIDATION_ERROR";
|
|
6492
|
+
readonly PERMISSION_DENIED: "PERMISSION_DENIED";
|
|
6493
|
+
readonly NOT_FOUND: "NOT_FOUND";
|
|
6494
|
+
readonly ALREADY_EXISTS: "ALREADY_EXISTS";
|
|
6495
|
+
readonly NETWORK_ERROR: "NETWORK_ERROR";
|
|
6496
|
+
};
|
|
6497
|
+
type EntityHookErrors = (typeof ENTITY_HOOK_ERRORS)[keyof typeof ENTITY_HOOK_ERRORS];
|
|
6041
6498
|
/**
|
|
6042
6499
|
* Maps Firebase error codes to entity hook error types
|
|
6043
6500
|
* Used for consistent error handling across the platform
|
|
@@ -6064,12 +6521,18 @@ declare class EntityHookError extends Error {
|
|
|
6064
6521
|
}
|
|
6065
6522
|
/**
|
|
6066
6523
|
* Error source types for tracking where errors originate
|
|
6067
|
-
*
|
|
6068
|
-
* @version 0.0.1
|
|
6069
|
-
* @since 0.0.1
|
|
6070
|
-
* @author AMBROISE PARK Consulting
|
|
6071
6524
|
*/
|
|
6072
|
-
|
|
6525
|
+
declare const ERROR_SOURCE: {
|
|
6526
|
+
readonly AUTH: "auth";
|
|
6527
|
+
readonly OAUTH: "oauth";
|
|
6528
|
+
readonly FIREBASE: "firebase";
|
|
6529
|
+
readonly API: "api";
|
|
6530
|
+
readonly VALIDATION: "validation";
|
|
6531
|
+
readonly ENTITY: "entity";
|
|
6532
|
+
readonly UI: "ui";
|
|
6533
|
+
readonly UNKNOWN: "unknown";
|
|
6534
|
+
};
|
|
6535
|
+
type ErrorSource = (typeof ERROR_SOURCE)[keyof typeof ERROR_SOURCE];
|
|
6073
6536
|
/**
|
|
6074
6537
|
* Standardized error class for the DoNotDev platform
|
|
6075
6538
|
* Single source of truth with optional fields for all use cases
|
|
@@ -6105,6 +6568,145 @@ declare class DoNotDevError extends Error {
|
|
|
6105
6568
|
toJSON(): object;
|
|
6106
6569
|
}
|
|
6107
6570
|
|
|
6571
|
+
/**
|
|
6572
|
+
* @fileoverview Security Types
|
|
6573
|
+
* @description Core security interface definitions. Implemented by @donotdev/security.
|
|
6574
|
+
* Keeping these in @donotdev/core avoids circular deps between packages.
|
|
6575
|
+
*
|
|
6576
|
+
* @version 0.0.1
|
|
6577
|
+
* @since 0.0.1
|
|
6578
|
+
* @author AMBROISE PARK Consulting
|
|
6579
|
+
*/
|
|
6580
|
+
/**
|
|
6581
|
+
* Audit event types (SOC2 CC6, CC7, C1, P1-P8).
|
|
6582
|
+
*
|
|
6583
|
+
* @version 0.0.1
|
|
6584
|
+
* @since 0.0.1
|
|
6585
|
+
* @author AMBROISE PARK Consulting
|
|
6586
|
+
*/
|
|
6587
|
+
type AuditEventType = 'auth.login.success' | 'auth.login.failure' | 'auth.logout' | 'auth.locked' | 'auth.unlocked' | 'auth.mfa.enrolled' | 'auth.mfa.challenged' | 'auth.session.expired' | 'auth.password.reset' | 'auth.role.changed' | 'crud.create' | 'crud.read' | 'crud.update' | 'crud.delete' | 'pii.access' | 'pii.export' | 'pii.erase' | 'rate_limit.exceeded' | 'anomaly.detected' | 'config.changed';
|
|
6588
|
+
/**
|
|
6589
|
+
* A single structured audit log entry.
|
|
6590
|
+
*
|
|
6591
|
+
* @version 0.0.1
|
|
6592
|
+
* @since 0.0.1
|
|
6593
|
+
* @author AMBROISE PARK Consulting
|
|
6594
|
+
*/
|
|
6595
|
+
interface AuditEvent {
|
|
6596
|
+
type: AuditEventType;
|
|
6597
|
+
timestamp: string;
|
|
6598
|
+
userId?: string;
|
|
6599
|
+
collection?: string;
|
|
6600
|
+
docId?: string;
|
|
6601
|
+
ip?: string;
|
|
6602
|
+
userAgent?: string;
|
|
6603
|
+
metadata?: Record<string, string | number | boolean>;
|
|
6604
|
+
}
|
|
6605
|
+
/**
|
|
6606
|
+
* Persistence-backed rate limit config (server-side: maxAttempts / windowMs / blockDurationMs).
|
|
6607
|
+
* Used by RateLimitBackend implementations (Firestore, Postgres, Redis).
|
|
6608
|
+
* Distinct from the client-side RateLimitConfig in @donotdev/types/utils.
|
|
6609
|
+
*
|
|
6610
|
+
* @version 0.0.1
|
|
6611
|
+
* @since 0.0.1
|
|
6612
|
+
* @author AMBROISE PARK Consulting
|
|
6613
|
+
*/
|
|
6614
|
+
interface ServerRateLimitConfig {
|
|
6615
|
+
/** Max requests allowed within the window. */
|
|
6616
|
+
maxAttempts: number;
|
|
6617
|
+
/** Window duration in milliseconds. */
|
|
6618
|
+
windowMs: number;
|
|
6619
|
+
/** Block duration in milliseconds after limit is exceeded. */
|
|
6620
|
+
blockDurationMs: number;
|
|
6621
|
+
}
|
|
6622
|
+
/**
|
|
6623
|
+
* Result from a server-side rate limit check.
|
|
6624
|
+
*
|
|
6625
|
+
* @version 0.0.1
|
|
6626
|
+
* @since 0.0.1
|
|
6627
|
+
* @author AMBROISE PARK Consulting
|
|
6628
|
+
*/
|
|
6629
|
+
interface ServerRateLimitResult {
|
|
6630
|
+
allowed: boolean;
|
|
6631
|
+
remaining: number;
|
|
6632
|
+
resetAt: Date | null;
|
|
6633
|
+
blockRemainingSeconds: number | null;
|
|
6634
|
+
}
|
|
6635
|
+
/**
|
|
6636
|
+
* Pluggable rate limit backend for DndevSecurity.
|
|
6637
|
+
* Implement to swap the default in-memory limiter with Firestore, Postgres, Redis, etc.
|
|
6638
|
+
*
|
|
6639
|
+
* @example
|
|
6640
|
+
* ```typescript
|
|
6641
|
+
* import { checkRateLimitWithFirestore } from '@donotdev/functions/shared';
|
|
6642
|
+
* const security = new DndevSecurity({
|
|
6643
|
+
* rateLimitBackend: { check: (key, cfg) => checkRateLimitWithFirestore(key, cfg) },
|
|
6644
|
+
* });
|
|
6645
|
+
* ```
|
|
6646
|
+
*
|
|
6647
|
+
* @version 0.0.1
|
|
6648
|
+
* @since 0.0.1
|
|
6649
|
+
* @author AMBROISE PARK Consulting
|
|
6650
|
+
*/
|
|
6651
|
+
interface RateLimitBackend {
|
|
6652
|
+
check(key: string, config: ServerRateLimitConfig): Promise<ServerRateLimitResult>;
|
|
6653
|
+
}
|
|
6654
|
+
/**
|
|
6655
|
+
* Minimal auth hardening interface exposed by SecurityContext.
|
|
6656
|
+
* Auth adapters delegate lockout to this when security is injected,
|
|
6657
|
+
* ensuring a single lockout source of truth that respects user config.
|
|
6658
|
+
*
|
|
6659
|
+
* @version 0.0.1
|
|
6660
|
+
* @since 0.0.1
|
|
6661
|
+
* @author AMBROISE PARK Consulting
|
|
6662
|
+
*/
|
|
6663
|
+
interface AuthHardeningContext {
|
|
6664
|
+
/** @throws if identifier is currently locked out */
|
|
6665
|
+
checkLockout(identifier: string): void;
|
|
6666
|
+
/** Record a failed auth attempt; may trigger lockout */
|
|
6667
|
+
recordFailure(identifier: string): void;
|
|
6668
|
+
/** Clear failure counter on successful auth */
|
|
6669
|
+
recordSuccess(identifier: string): void;
|
|
6670
|
+
}
|
|
6671
|
+
/**
|
|
6672
|
+
* Security context interface consumed by CrudService and auth adapters.
|
|
6673
|
+
* Implemented by DndevSecurity in @donotdev/security/server.
|
|
6674
|
+
*
|
|
6675
|
+
* Pass an instance via CrudService.setSecurity() or auth adapter constructors.
|
|
6676
|
+
* When not provided, no audit logging, rate limiting, or encryption is applied.
|
|
6677
|
+
*
|
|
6678
|
+
* @version 0.0.1
|
|
6679
|
+
* @since 0.0.1
|
|
6680
|
+
* @author AMBROISE PARK Consulting
|
|
6681
|
+
*/
|
|
6682
|
+
interface SecurityContext {
|
|
6683
|
+
/** Emit a structured audit event */
|
|
6684
|
+
audit(event: Omit<AuditEvent, 'timestamp'>): void | Promise<void>;
|
|
6685
|
+
/**
|
|
6686
|
+
* Check rate limit for a key + operation.
|
|
6687
|
+
* @throws {Error} when threshold is exceeded
|
|
6688
|
+
*/
|
|
6689
|
+
checkRateLimit(key: string, operation: 'read' | 'write'): Promise<void>;
|
|
6690
|
+
/** Encrypt named PII fields in a data object (returns new object) */
|
|
6691
|
+
encryptPii<T extends Record<string, unknown>>(data: T, piiFields: string[]): T;
|
|
6692
|
+
/** Decrypt named PII fields in a data object (returns new object) */
|
|
6693
|
+
decryptPii<T extends Record<string, unknown>>(data: T, piiFields: string[]): T;
|
|
6694
|
+
/**
|
|
6695
|
+
* Auth hardening — when present, auth adapters delegate brute-force lockout here
|
|
6696
|
+
* instead of using their own hardcoded Maps, ensuring injected config is respected.
|
|
6697
|
+
*/
|
|
6698
|
+
authHardening?: AuthHardeningContext;
|
|
6699
|
+
/**
|
|
6700
|
+
* Record a behavioral anomaly event (e.g. bulk deletes, bulk reads, auth failures).
|
|
6701
|
+
* Optional — no-op when not implemented. CrudService calls this after write mutations
|
|
6702
|
+
* so the anomaly detector can fire alerts when thresholds are breached.
|
|
6703
|
+
*
|
|
6704
|
+
* @param type - Anomaly type string (must match AnomalyType in @donotdev/security)
|
|
6705
|
+
* @param userId - User who triggered the anomaly (undefined = system / anonymous)
|
|
6706
|
+
*/
|
|
6707
|
+
recordAnomaly?(type: string, userId?: string): void;
|
|
6708
|
+
}
|
|
6709
|
+
|
|
6108
6710
|
/**
|
|
6109
6711
|
* @fileoverview Auth Events
|
|
6110
6712
|
* @description Event constants and types for auth EDA system. Defines authentication-related event names and types for event-driven architecture.
|
|
@@ -6243,11 +6845,11 @@ type BillingEventName = (typeof BILLING_EVENTS)[BillingEventKey];
|
|
|
6243
6845
|
*/
|
|
6244
6846
|
interface BillingEventData {
|
|
6245
6847
|
provider?: string;
|
|
6246
|
-
config?:
|
|
6247
|
-
invoice?:
|
|
6248
|
-
paymentMethod?:
|
|
6848
|
+
config?: Record<string, unknown>;
|
|
6849
|
+
invoice?: Record<string, unknown>;
|
|
6850
|
+
paymentMethod?: Record<string, unknown>;
|
|
6249
6851
|
timestamp: Date;
|
|
6250
|
-
metadata?: Record<string,
|
|
6852
|
+
metadata?: Record<string, unknown>;
|
|
6251
6853
|
}
|
|
6252
6854
|
/**
|
|
6253
6855
|
* Subscription event data interface
|
|
@@ -6257,11 +6859,11 @@ interface BillingEventData {
|
|
|
6257
6859
|
* @author AMBROISE PARK Consulting
|
|
6258
6860
|
*/
|
|
6259
6861
|
interface SubscriptionEventData {
|
|
6260
|
-
subscription:
|
|
6261
|
-
previousSubscription?:
|
|
6862
|
+
subscription: Record<string, unknown>;
|
|
6863
|
+
previousSubscription?: Record<string, unknown>;
|
|
6262
6864
|
reason?: string;
|
|
6263
6865
|
timestamp: Date;
|
|
6264
|
-
metadata?: Record<string,
|
|
6866
|
+
metadata?: Record<string, unknown>;
|
|
6265
6867
|
}
|
|
6266
6868
|
/**
|
|
6267
6869
|
* Payment event data interface
|
|
@@ -6275,10 +6877,10 @@ interface PaymentEventData {
|
|
|
6275
6877
|
amount: number;
|
|
6276
6878
|
currency: string;
|
|
6277
6879
|
status: 'succeeded' | 'failed' | 'pending' | 'refunded';
|
|
6278
|
-
subscription?:
|
|
6279
|
-
invoice?:
|
|
6880
|
+
subscription?: Record<string, unknown>;
|
|
6881
|
+
invoice?: Record<string, unknown>;
|
|
6280
6882
|
timestamp: Date;
|
|
6281
|
-
metadata?: Record<string,
|
|
6883
|
+
metadata?: Record<string, unknown>;
|
|
6282
6884
|
}
|
|
6283
6885
|
/**
|
|
6284
6886
|
* Webhook event data interface
|
|
@@ -6290,7 +6892,7 @@ interface PaymentEventData {
|
|
|
6290
6892
|
interface WebhookEventData {
|
|
6291
6893
|
provider: string;
|
|
6292
6894
|
eventType: string;
|
|
6293
|
-
data:
|
|
6895
|
+
data: Record<string, unknown>;
|
|
6294
6896
|
signature?: string;
|
|
6295
6897
|
timestamp: Date;
|
|
6296
6898
|
}
|
|
@@ -7090,6 +7692,71 @@ interface FunctionLoader {
|
|
|
7090
7692
|
/** Get loaded system (throws if not loaded) */
|
|
7091
7693
|
getSystem(): FunctionSystem;
|
|
7092
7694
|
}
|
|
7695
|
+
/**
|
|
7696
|
+
* Result type for useFunctionsQuery hook
|
|
7697
|
+
*
|
|
7698
|
+
* @version 0.0.1
|
|
7699
|
+
* @since 0.0.1
|
|
7700
|
+
* @author AMBROISE PARK Consulting
|
|
7701
|
+
*/
|
|
7702
|
+
interface UseFunctionsQueryResult<TData> {
|
|
7703
|
+
/** Query data */
|
|
7704
|
+
data: TData | undefined;
|
|
7705
|
+
/** Whether the query is loading */
|
|
7706
|
+
isLoading: boolean;
|
|
7707
|
+
/** Whether the query encountered an error */
|
|
7708
|
+
isError: boolean;
|
|
7709
|
+
/** Error details if any */
|
|
7710
|
+
error: FunctionError | null;
|
|
7711
|
+
/** Whether the query is currently fetching (includes background refetch) */
|
|
7712
|
+
isFetching: boolean;
|
|
7713
|
+
/** Refetch the query */
|
|
7714
|
+
refetch: () => Promise<void>;
|
|
7715
|
+
}
|
|
7716
|
+
/**
|
|
7717
|
+
* Result type for useFunctionsMutation hook
|
|
7718
|
+
*
|
|
7719
|
+
* @version 0.0.1
|
|
7720
|
+
* @since 0.0.1
|
|
7721
|
+
* @author AMBROISE PARK Consulting
|
|
7722
|
+
*/
|
|
7723
|
+
interface UseFunctionsMutationResult<TData, TVariables> {
|
|
7724
|
+
/** Execute the mutation */
|
|
7725
|
+
mutate: (variables: TVariables) => void;
|
|
7726
|
+
/** Execute the mutation and return a promise */
|
|
7727
|
+
mutateAsync: (variables: TVariables) => Promise<TData>;
|
|
7728
|
+
/** Whether the mutation is in progress */
|
|
7729
|
+
isLoading: boolean;
|
|
7730
|
+
/** Whether the mutation encountered an error */
|
|
7731
|
+
isError: boolean;
|
|
7732
|
+
/** Whether the mutation succeeded */
|
|
7733
|
+
isSuccess: boolean;
|
|
7734
|
+
/** Error details if any */
|
|
7735
|
+
error: FunctionError | null;
|
|
7736
|
+
/** Mutation result data */
|
|
7737
|
+
data: TData | undefined;
|
|
7738
|
+
/** Reset the mutation state */
|
|
7739
|
+
reset: () => void;
|
|
7740
|
+
}
|
|
7741
|
+
/**
|
|
7742
|
+
* Result type for useFunctionsCall hook
|
|
7743
|
+
*
|
|
7744
|
+
* @version 0.0.1
|
|
7745
|
+
* @since 0.0.1
|
|
7746
|
+
* @author AMBROISE PARK Consulting
|
|
7747
|
+
*/
|
|
7748
|
+
interface UseFunctionsCallResult<TData> {
|
|
7749
|
+
/** Execute the function call */
|
|
7750
|
+
call: (params?: object) => Promise<TData>;
|
|
7751
|
+
/** Whether the call is in progress */
|
|
7752
|
+
isLoading: boolean;
|
|
7753
|
+
/** Whether the call encountered an error */
|
|
7754
|
+
isError: boolean;
|
|
7755
|
+
/** Error details if any */
|
|
7756
|
+
error: FunctionError | null;
|
|
7757
|
+
/** Call result data */
|
|
7758
|
+
data: TData | undefined;
|
|
7759
|
+
}
|
|
7093
7760
|
/**
|
|
7094
7761
|
* Complete functions system interface
|
|
7095
7762
|
*
|
|
@@ -7102,12 +7769,12 @@ interface FunctionSystem {
|
|
|
7102
7769
|
client: FunctionClient;
|
|
7103
7770
|
/** React Query hooks */
|
|
7104
7771
|
hooks: {
|
|
7105
|
-
useFunctionsQuery:
|
|
7106
|
-
useFunctionsMutation:
|
|
7107
|
-
useFunctionsCall:
|
|
7772
|
+
useFunctionsQuery: <TData = unknown>(functionName: string, params?: object, schema?: v.BaseSchema<unknown, TData, v.BaseIssue<unknown>>, options?: UseFunctionsQueryOptions<TData>) => UseFunctionsQueryResult<TData>;
|
|
7773
|
+
useFunctionsMutation: <TData = unknown, TVariables = object>(functionName: string, schema?: v.BaseSchema<unknown, TData, v.BaseIssue<unknown>>, options?: UseFunctionsMutationOptions<TData, TVariables>) => UseFunctionsMutationResult<TData, TVariables>;
|
|
7774
|
+
useFunctionsCall: <TData = unknown>(functionName: string, options?: FunctionCallOptions) => UseFunctionsCallResult<TData>;
|
|
7108
7775
|
};
|
|
7109
7776
|
/** Direct call function */
|
|
7110
|
-
callFunction:
|
|
7777
|
+
callFunction: FunctionClient['callFunction'];
|
|
7111
7778
|
}
|
|
7112
7779
|
/**
|
|
7113
7780
|
* React Query options for functions
|
|
@@ -7184,27 +7851,27 @@ interface FunctionSchemas {
|
|
|
7184
7851
|
auth: {
|
|
7185
7852
|
getUserProfile: FunctionSchema<{
|
|
7186
7853
|
userId: string;
|
|
7187
|
-
},
|
|
7188
|
-
updateUserProfile: FunctionSchema<
|
|
7189
|
-
refreshToken: FunctionSchema<
|
|
7854
|
+
}, Record<string, unknown>>;
|
|
7855
|
+
updateUserProfile: FunctionSchema<Record<string, unknown>, Record<string, unknown>>;
|
|
7856
|
+
refreshToken: FunctionSchema<Record<string, never>, Record<string, unknown>>;
|
|
7190
7857
|
};
|
|
7191
7858
|
/** Billing-related functions */
|
|
7192
7859
|
billing: {
|
|
7193
|
-
createCheckoutSession: FunctionSchema<
|
|
7194
|
-
refreshSubscriptionStatus: FunctionSchema<
|
|
7195
|
-
processPaymentSuccess: FunctionSchema<
|
|
7860
|
+
createCheckoutSession: FunctionSchema<Record<string, unknown>, Record<string, unknown>>;
|
|
7861
|
+
refreshSubscriptionStatus: FunctionSchema<Record<string, never>, Record<string, unknown>>;
|
|
7862
|
+
processPaymentSuccess: FunctionSchema<Record<string, unknown>, Record<string, unknown>>;
|
|
7196
7863
|
};
|
|
7197
7864
|
/** Generic CRUD functions */
|
|
7198
7865
|
crud: {
|
|
7199
|
-
createEntity: FunctionSchema<
|
|
7200
|
-
updateEntity: FunctionSchema<
|
|
7866
|
+
createEntity: FunctionSchema<Record<string, unknown>, Record<string, unknown>>;
|
|
7867
|
+
updateEntity: FunctionSchema<Record<string, unknown>, Record<string, unknown>>;
|
|
7201
7868
|
deleteEntity: FunctionSchema<{
|
|
7202
7869
|
id: string;
|
|
7203
|
-
},
|
|
7870
|
+
}, Record<string, unknown>>;
|
|
7204
7871
|
getEntity: FunctionSchema<{
|
|
7205
7872
|
id: string;
|
|
7206
|
-
},
|
|
7207
|
-
listEntities: FunctionSchema<
|
|
7873
|
+
}, Record<string, unknown>>;
|
|
7874
|
+
listEntities: FunctionSchema<Record<string, unknown>, Record<string, unknown>[]>;
|
|
7208
7875
|
};
|
|
7209
7876
|
}
|
|
7210
7877
|
/**
|
|
@@ -7842,6 +8509,12 @@ interface InitOptions<T = object> extends PluginOptions<T> {
|
|
|
7842
8509
|
*/
|
|
7843
8510
|
debug?: boolean;
|
|
7844
8511
|
|
|
8512
|
+
/**
|
|
8513
|
+
* Show support notice in console during initialization.
|
|
8514
|
+
* @default true
|
|
8515
|
+
*/
|
|
8516
|
+
showSupportNotice?: boolean;
|
|
8517
|
+
|
|
7845
8518
|
/**
|
|
7846
8519
|
* Resources to initialize with (if not using loading or not appending using addResourceBundle)
|
|
7847
8520
|
* @default undefined
|
|
@@ -8256,6 +8929,11 @@ interface TOptionsBase {
|
|
|
8256
8929
|
* Override interpolation options
|
|
8257
8930
|
*/
|
|
8258
8931
|
interpolation?: InterpolationOptions;
|
|
8932
|
+
/**
|
|
8933
|
+
* Optional keyPrefix that will be applied to the key before resolving.
|
|
8934
|
+
* Only supported on the TFunction returned by getFixedT().
|
|
8935
|
+
*/
|
|
8936
|
+
keyPrefix?: string;
|
|
8259
8937
|
}
|
|
8260
8938
|
|
|
8261
8939
|
type TOptions<TInterpolationMap extends object = $Dictionary> = TOptionsBase &
|
|
@@ -8564,6 +9242,14 @@ type AppendKeyPrefix<Key, KPrefix> = KPrefix extends string
|
|
|
8564
9242
|
? `${KPrefix}${_KeySeparator}${Key & string}`
|
|
8565
9243
|
: Key;
|
|
8566
9244
|
|
|
9245
|
+
/**
|
|
9246
|
+
* Resolves the effective key prefix by preferring a per-call `keyPrefix` from
|
|
9247
|
+
* options over the interface-level `KPrefix` (set via getFixedT's 3rd argument).
|
|
9248
|
+
*/
|
|
9249
|
+
type EffectiveKPrefix<KPrefix, TOpt> = TOpt extends { keyPrefix: infer OptKP extends string }
|
|
9250
|
+
? OptKP
|
|
9251
|
+
: KPrefix;
|
|
9252
|
+
|
|
8567
9253
|
/** ************************
|
|
8568
9254
|
* T function declaration *
|
|
8569
9255
|
************************* */
|
|
@@ -8571,17 +9257,17 @@ type AppendKeyPrefix<Key, KPrefix> = KPrefix extends string
|
|
|
8571
9257
|
interface TFunctionStrict<Ns extends Namespace = DefaultNamespace, KPrefix = undefined>
|
|
8572
9258
|
extends Branded<Ns> {
|
|
8573
9259
|
<
|
|
8574
|
-
const Key extends ParseKeys<Ns, TOpt, KPrefix
|
|
9260
|
+
const Key extends ParseKeys<Ns, TOpt, EffectiveKPrefix<KPrefix, TOpt>> | TemplateStringsArray,
|
|
8575
9261
|
const TOpt extends TOptions,
|
|
8576
|
-
Ret extends TFunctionReturn<Ns, AppendKeyPrefix<Key, KPrefix
|
|
9262
|
+
Ret extends TFunctionReturn<Ns, AppendKeyPrefix<Key, EffectiveKPrefix<KPrefix, TOpt>>, TOpt>,
|
|
8577
9263
|
>(
|
|
8578
9264
|
key: Key | Key[],
|
|
8579
9265
|
options?: TOpt & InterpolationMap<Ret>,
|
|
8580
9266
|
): TFunctionReturnOptionalDetails<TFunctionProcessReturnValue<$NoInfer<Ret>, never>, TOpt>;
|
|
8581
9267
|
<
|
|
8582
|
-
const Key extends ParseKeys<Ns, TOpt, KPrefix
|
|
9268
|
+
const Key extends ParseKeys<Ns, TOpt, EffectiveKPrefix<KPrefix, TOpt>> | TemplateStringsArray,
|
|
8583
9269
|
const TOpt extends TOptions,
|
|
8584
|
-
Ret extends TFunctionReturn<Ns, AppendKeyPrefix<Key, KPrefix
|
|
9270
|
+
Ret extends TFunctionReturn<Ns, AppendKeyPrefix<Key, EffectiveKPrefix<KPrefix, TOpt>>, TOpt>,
|
|
8585
9271
|
>(
|
|
8586
9272
|
key: Key | Key[],
|
|
8587
9273
|
defaultValue: string,
|
|
@@ -8592,9 +9278,9 @@ interface TFunctionStrict<Ns extends Namespace = DefaultNamespace, KPrefix = und
|
|
|
8592
9278
|
interface TFunctionNonStrict<Ns extends Namespace = DefaultNamespace, KPrefix = undefined>
|
|
8593
9279
|
extends Branded<Ns> {
|
|
8594
9280
|
<
|
|
8595
|
-
const Key extends ParseKeys<Ns, TOpt, KPrefix
|
|
9281
|
+
const Key extends ParseKeys<Ns, TOpt, EffectiveKPrefix<KPrefix, TOpt>> | TemplateStringsArray,
|
|
8596
9282
|
const TOpt extends TOptions,
|
|
8597
|
-
Ret extends TFunctionReturn<Ns, AppendKeyPrefix<Key, KPrefix
|
|
9283
|
+
Ret extends TFunctionReturn<Ns, AppendKeyPrefix<Key, EffectiveKPrefix<KPrefix, TOpt>>, TOpt>,
|
|
8598
9284
|
const ActualOptions extends TOpt & InterpolationMap<Ret> = TOpt & InterpolationMap<Ret>,
|
|
8599
9285
|
DefaultValue extends string = never,
|
|
8600
9286
|
>(
|
|
@@ -9114,6 +9800,17 @@ interface i18n extends CustomInstanceExtensions {
|
|
|
9114
9800
|
*/
|
|
9115
9801
|
cloneInstance(options?: CloneOptions, callback?: Callback): i18n;
|
|
9116
9802
|
|
|
9803
|
+
/**
|
|
9804
|
+
* Returns a JSON representation of the i18next instance for serialization.
|
|
9805
|
+
*/
|
|
9806
|
+
toJSON(): {
|
|
9807
|
+
options: InitOptions;
|
|
9808
|
+
store: ResourceStore;
|
|
9809
|
+
language: string;
|
|
9810
|
+
languages: readonly string[];
|
|
9811
|
+
resolvedLanguage?: string;
|
|
9812
|
+
};
|
|
9813
|
+
|
|
9117
9814
|
/**
|
|
9118
9815
|
* Gets fired after initialization.
|
|
9119
9816
|
*/
|
|
@@ -10238,6 +10935,7 @@ interface CustomStoreConfig {
|
|
|
10238
10935
|
initialize?: () => Promise<boolean | void>;
|
|
10239
10936
|
[key: string]: any;
|
|
10240
10937
|
};
|
|
10938
|
+
subscribe: (listener: () => void) => () => void;
|
|
10241
10939
|
};
|
|
10242
10940
|
}
|
|
10243
10941
|
/**
|
|
@@ -11313,10 +12011,138 @@ interface OAuthAPI {
|
|
|
11313
12011
|
disconnect: (partnerId: OAuthPartnerId) => Promise<void>;
|
|
11314
12012
|
isConnected: (partnerId: OAuthPartnerId) => boolean;
|
|
11315
12013
|
getCredentials: (partnerId: OAuthPartnerId) => OAuthCredentials | null;
|
|
11316
|
-
handleCallback: (partnerId: OAuthPartnerId, code: string) => Promise<void>;
|
|
12014
|
+
handleCallback: (partnerId: OAuthPartnerId, code: string, state?: string) => Promise<void>;
|
|
11317
12015
|
isAvailable: boolean;
|
|
11318
12016
|
}
|
|
11319
12017
|
|
|
12018
|
+
/**
|
|
12019
|
+
* @fileoverview Callable Provider Interface
|
|
12020
|
+
* @description Provider-agnostic interface for invoking server-side functions.
|
|
12021
|
+
* Firebase uses `httpsCallable`; Supabase uses `functions.invoke()`.
|
|
12022
|
+
*
|
|
12023
|
+
* @version 0.0.1
|
|
12024
|
+
* @since 0.5.0
|
|
12025
|
+
* @author AMBROISE PARK Consulting
|
|
12026
|
+
*/
|
|
12027
|
+
/**
|
|
12028
|
+
* Provider-agnostic interface for calling server-side functions.
|
|
12029
|
+
*
|
|
12030
|
+
* @example
|
|
12031
|
+
* ```typescript
|
|
12032
|
+
* const callable: ICallableProvider = new SupabaseCallableProvider(client);
|
|
12033
|
+
* const result = await callable.call<{ userId: string }, { success: boolean }>(
|
|
12034
|
+
* 'delete-account',
|
|
12035
|
+
* { userId: '123' }
|
|
12036
|
+
* );
|
|
12037
|
+
* ```
|
|
12038
|
+
*
|
|
12039
|
+
* @version 0.0.1
|
|
12040
|
+
* @since 0.5.0
|
|
12041
|
+
*/
|
|
12042
|
+
interface ICallableProvider {
|
|
12043
|
+
call<TReq, TRes>(functionName: string, data: TReq): Promise<TRes>;
|
|
12044
|
+
}
|
|
12045
|
+
|
|
12046
|
+
/**
|
|
12047
|
+
* @fileoverview Storage Adapter Interface
|
|
12048
|
+
* @description Provider-agnostic interface for file/image storage.
|
|
12049
|
+
* Any storage backend (Firebase Storage, S3, Cloudflare R2, Supabase Storage) must implement this contract.
|
|
12050
|
+
*
|
|
12051
|
+
* @version 0.0.1
|
|
12052
|
+
* @since 0.5.0
|
|
12053
|
+
* @author AMBROISE PARK Consulting
|
|
12054
|
+
*/
|
|
12055
|
+
/** Progress callback for upload operations (0-100) */
|
|
12056
|
+
type UploadProgressCallback = (percent: number) => void;
|
|
12057
|
+
/** Options for file upload */
|
|
12058
|
+
interface UploadOptions {
|
|
12059
|
+
/** Storage path/prefix (e.g. 'uploads/images') */
|
|
12060
|
+
storagePath?: string;
|
|
12061
|
+
/** Custom filename override */
|
|
12062
|
+
filename?: string;
|
|
12063
|
+
/** Progress callback */
|
|
12064
|
+
onProgress?: UploadProgressCallback;
|
|
12065
|
+
}
|
|
12066
|
+
/** Result of an upload operation */
|
|
12067
|
+
interface UploadResult {
|
|
12068
|
+
/** Public URL of the uploaded file */
|
|
12069
|
+
url: string;
|
|
12070
|
+
/** Storage path of the uploaded file (for deletion) */
|
|
12071
|
+
path: string;
|
|
12072
|
+
}
|
|
12073
|
+
/**
|
|
12074
|
+
* Provider-agnostic storage adapter interface.
|
|
12075
|
+
*
|
|
12076
|
+
* Implementations:
|
|
12077
|
+
* - `FirebaseStorageAdapter` (Firebase Storage)
|
|
12078
|
+
* - Future: S3, Cloudflare R2, Supabase Storage adapters
|
|
12079
|
+
*
|
|
12080
|
+
* @version 0.0.1
|
|
12081
|
+
* @since 0.5.0
|
|
12082
|
+
*/
|
|
12083
|
+
interface IStorageAdapter {
|
|
12084
|
+
/** Upload a file or blob to storage. Returns the public URL and storage path. */
|
|
12085
|
+
upload(file: File | Blob, options?: UploadOptions): Promise<UploadResult>;
|
|
12086
|
+
/** Delete a file by its URL or storage path. */
|
|
12087
|
+
delete(urlOrPath: string): Promise<void>;
|
|
12088
|
+
/** Get the public download URL for a storage path. */
|
|
12089
|
+
getUrl(path: string): Promise<string>;
|
|
12090
|
+
}
|
|
12091
|
+
|
|
12092
|
+
/**
|
|
12093
|
+
* @fileoverview Provider Registry Types
|
|
12094
|
+
* @description Types for pluggable backends (CRUD, auth, storage, callable).
|
|
12095
|
+
* Consumers call `configureProviders()` once at app startup; `useCrud` and auth hooks
|
|
12096
|
+
* use these providers. Import `config/providers` from main.tsx before any CRUD usage.
|
|
12097
|
+
*
|
|
12098
|
+
* @version 0.0.1
|
|
12099
|
+
* @since 0.5.0
|
|
12100
|
+
* @author AMBROISE PARK Consulting
|
|
12101
|
+
*/
|
|
12102
|
+
|
|
12103
|
+
/**
|
|
12104
|
+
* All pluggable providers for the DoNotDev framework.
|
|
12105
|
+
*
|
|
12106
|
+
* - **crud** (required): CRUD adapter. Required for `useCrud` and entity operations.
|
|
12107
|
+
* - **auth** (optional): Client auth. Omit if using external auth.
|
|
12108
|
+
* - **storage** (optional): File/image storage. Omit if no uploads.
|
|
12109
|
+
* - **serverAuth** (optional): Server-side token verification.
|
|
12110
|
+
* - **callable** (optional): Server function invocation (e.g. Supabase Edge Functions).
|
|
12111
|
+
*
|
|
12112
|
+
* @example Firebase
|
|
12113
|
+
* ```typescript
|
|
12114
|
+
* configureProviders({
|
|
12115
|
+
* crud: new FirestoreAdapter(),
|
|
12116
|
+
* auth: new FirebaseAuth(),
|
|
12117
|
+
* storage: new FirebaseStorageAdapter(),
|
|
12118
|
+
* });
|
|
12119
|
+
* ```
|
|
12120
|
+
*
|
|
12121
|
+
* @example Supabase
|
|
12122
|
+
* ```typescript
|
|
12123
|
+
* configureProviders({
|
|
12124
|
+
* crud: new SupabaseCrudAdapter(supabase),
|
|
12125
|
+
* auth: new SupabaseAuth(supabase),
|
|
12126
|
+
* storage: new SupabaseStorageAdapter(supabase),
|
|
12127
|
+
* });
|
|
12128
|
+
* ```
|
|
12129
|
+
*
|
|
12130
|
+
* @version 0.0.1
|
|
12131
|
+
* @since 0.5.0
|
|
12132
|
+
*/
|
|
12133
|
+
interface DndevProviders {
|
|
12134
|
+
/** Client-side authentication provider */
|
|
12135
|
+
auth?: AuthProvider;
|
|
12136
|
+
/** Server-side token verification and user management */
|
|
12137
|
+
serverAuth?: IServerAuthAdapter;
|
|
12138
|
+
/** Database / CRUD operations (required) */
|
|
12139
|
+
crud: ICrudAdapter;
|
|
12140
|
+
/** File and image storage */
|
|
12141
|
+
storage?: IStorageAdapter;
|
|
12142
|
+
/** Server-side function invocation (Edge Functions, Cloud Functions, API routes) */
|
|
12143
|
+
callable?: ICallableProvider;
|
|
12144
|
+
}
|
|
12145
|
+
|
|
11320
12146
|
/**
|
|
11321
12147
|
* @fileoverview Network-Related Type Definitions
|
|
11322
12148
|
* @description Centralized types for network connectivity, status tracking, and monitoring. Defines network connection types, network state, and network-related interfaces.
|
|
@@ -11625,14 +12451,15 @@ interface RateLimitManager {
|
|
|
11625
12451
|
*/
|
|
11626
12452
|
|
|
11627
12453
|
/**
|
|
11628
|
-
*
|
|
12454
|
+
* DoNotDev store API interface without direct Zustand dependency.
|
|
12455
|
+
* Renamed from StoreApi to avoid shadowing Zustand's StoreApi.
|
|
11629
12456
|
* @template T - The store state type
|
|
11630
12457
|
*
|
|
11631
|
-
* @version 0.0.
|
|
12458
|
+
* @version 0.0.2
|
|
11632
12459
|
* @since 0.0.1
|
|
11633
12460
|
* @author AMBROISE PARK Consulting
|
|
11634
12461
|
*/
|
|
11635
|
-
interface
|
|
12462
|
+
interface DndevStoreApi<T> {
|
|
11636
12463
|
/** Returns the current state */
|
|
11637
12464
|
getState: () => T;
|
|
11638
12465
|
/** Updates the store state */
|
|
@@ -11812,7 +12639,13 @@ interface AuthStateStore {
|
|
|
11812
12639
|
setNetworkStatus: (online: boolean, connectionType?: NetworkConnectionType) => void;
|
|
11813
12640
|
setError: (error: string | null, errorCode?: string) => void;
|
|
11814
12641
|
setLoading: (loading: boolean) => void;
|
|
11815
|
-
setSubscription: (subscription:
|
|
12642
|
+
setSubscription: (subscription: {
|
|
12643
|
+
tier: string;
|
|
12644
|
+
isActive: boolean;
|
|
12645
|
+
expiresAt: Date | null;
|
|
12646
|
+
features: string[];
|
|
12647
|
+
daysRemaining: number | null;
|
|
12648
|
+
}) => void;
|
|
11816
12649
|
setInitialized: (initialized: boolean) => void;
|
|
11817
12650
|
clearError: () => void;
|
|
11818
12651
|
reset: () => void;
|
|
@@ -12350,6 +13183,8 @@ type FeaturesWithoutConsent = {
|
|
|
12350
13183
|
*/
|
|
12351
13184
|
//# sourceMappingURL=index.d.ts.map
|
|
12352
13185
|
|
|
13186
|
+
declare const index_d$5_AGGREGATE_FILTER_OPERATORS: typeof AGGREGATE_FILTER_OPERATORS;
|
|
13187
|
+
declare const index_d$5_AGGREGATE_OPERATIONS: typeof AGGREGATE_OPERATIONS;
|
|
12353
13188
|
declare const index_d$5_AUTH_EVENTS: typeof AUTH_EVENTS;
|
|
12354
13189
|
declare const index_d$5_AUTH_PARTNERS: typeof AUTH_PARTNERS;
|
|
12355
13190
|
declare const index_d$5_AUTH_PARTNER_STATE: typeof AUTH_PARTNER_STATE;
|
|
@@ -12370,6 +13205,8 @@ type index_d$5_AppMetadata = AppMetadata;
|
|
|
12370
13205
|
type index_d$5_AppProvidersProps = AppProvidersProps;
|
|
12371
13206
|
type index_d$5_AssetsPluginConfig = AssetsPluginConfig;
|
|
12372
13207
|
type index_d$5_AttemptRecord = AttemptRecord;
|
|
13208
|
+
type index_d$5_AuditEvent = AuditEvent;
|
|
13209
|
+
type index_d$5_AuditEventType = AuditEventType;
|
|
12373
13210
|
type index_d$5_AuthAPI = AuthAPI;
|
|
12374
13211
|
type index_d$5_AuthActions = AuthActions;
|
|
12375
13212
|
type index_d$5_AuthConfig = AuthConfig;
|
|
@@ -12379,6 +13216,7 @@ type index_d$5_AuthError = AuthError;
|
|
|
12379
13216
|
type index_d$5_AuthEventData = AuthEventData;
|
|
12380
13217
|
type index_d$5_AuthEventKey = AuthEventKey;
|
|
12381
13218
|
type index_d$5_AuthEventName = AuthEventName;
|
|
13219
|
+
type index_d$5_AuthHardeningContext = AuthHardeningContext;
|
|
12382
13220
|
type index_d$5_AuthMethod = AuthMethod;
|
|
12383
13221
|
type index_d$5_AuthPartner = AuthPartner;
|
|
12384
13222
|
type index_d$5_AuthPartnerButton = AuthPartnerButton;
|
|
@@ -12423,11 +13261,13 @@ type index_d$5_BillingProviderConfig = BillingProviderConfig;
|
|
|
12423
13261
|
type index_d$5_BillingRedirectOperation = BillingRedirectOperation;
|
|
12424
13262
|
type index_d$5_Breakpoint = Breakpoint;
|
|
12425
13263
|
type index_d$5_BreakpointUtils = BreakpointUtils;
|
|
13264
|
+
type index_d$5_BuiltInFieldType = BuiltInFieldType;
|
|
12426
13265
|
type index_d$5_BusinessEntity = BusinessEntity;
|
|
12427
13266
|
declare const index_d$5_COMMON_TIER_CONFIGS: typeof COMMON_TIER_CONFIGS;
|
|
12428
13267
|
declare const index_d$5_CONFIDENCE_LEVELS: typeof CONFIDENCE_LEVELS;
|
|
12429
13268
|
declare const index_d$5_CONSENT_CATEGORY: typeof CONSENT_CATEGORY;
|
|
12430
13269
|
declare const index_d$5_CONTEXTS: typeof CONTEXTS;
|
|
13270
|
+
declare const index_d$5_CRUD_OPERATORS: typeof CRUD_OPERATORS;
|
|
12431
13271
|
type index_d$5_CachedError = CachedError;
|
|
12432
13272
|
type index_d$5_CanAPI = CanAPI;
|
|
12433
13273
|
type index_d$5_CheckGitHubAccessRequest = CheckGitHubAccessRequest;
|
|
@@ -12435,6 +13275,7 @@ type index_d$5_CheckoutMode = CheckoutMode;
|
|
|
12435
13275
|
type index_d$5_CheckoutOptions = CheckoutOptions;
|
|
12436
13276
|
type index_d$5_CheckoutSessionMetadata = CheckoutSessionMetadata;
|
|
12437
13277
|
declare const index_d$5_CheckoutSessionMetadataSchema: typeof CheckoutSessionMetadataSchema;
|
|
13278
|
+
type index_d$5_CollectionSubscriptionCallback<T> = CollectionSubscriptionCallback<T>;
|
|
12438
13279
|
type index_d$5_ColumnDef<T extends FieldValues> = ColumnDef<T>;
|
|
12439
13280
|
type index_d$5_CommonSubscriptionFeatures = CommonSubscriptionFeatures;
|
|
12440
13281
|
type index_d$5_CommonTranslations = CommonTranslations;
|
|
@@ -12453,9 +13294,12 @@ type index_d$5_CreateEntityData<T extends Record<string, any>> = CreateEntityDat
|
|
|
12453
13294
|
type index_d$5_CreateEntityRequest = CreateEntityRequest;
|
|
12454
13295
|
type index_d$5_CreateEntityResponse = CreateEntityResponse;
|
|
12455
13296
|
type index_d$5_CrudAPI<T = unknown> = CrudAPI<T>;
|
|
13297
|
+
type index_d$5_CrudCardProps = CrudCardProps;
|
|
12456
13298
|
type index_d$5_CrudConfig = CrudConfig;
|
|
13299
|
+
type index_d$5_CrudOperator = CrudOperator;
|
|
12457
13300
|
type index_d$5_CustomClaims = CustomClaims;
|
|
12458
13301
|
declare const index_d$5_CustomClaimsSchema: typeof CustomClaimsSchema;
|
|
13302
|
+
type index_d$5_CustomFieldOptionsMap = CustomFieldOptionsMap;
|
|
12459
13303
|
type index_d$5_CustomStoreConfig = CustomStoreConfig;
|
|
12460
13304
|
declare const index_d$5_DEFAULT_ENTITY_ACCESS: typeof DEFAULT_ENTITY_ACCESS;
|
|
12461
13305
|
declare const index_d$5_DEFAULT_LAYOUT_PRESET: typeof DEFAULT_LAYOUT_PRESET;
|
|
@@ -12467,11 +13311,19 @@ type index_d$5_DeleteEntityResponse = DeleteEntityResponse;
|
|
|
12467
13311
|
type index_d$5_Density = Density;
|
|
12468
13312
|
type index_d$5_DnDevOverride = DnDevOverride;
|
|
12469
13313
|
type index_d$5_DndevFrameworkConfig = DndevFrameworkConfig;
|
|
13314
|
+
type index_d$5_DndevProviders = DndevProviders;
|
|
13315
|
+
type index_d$5_DndevStoreApi<T> = DndevStoreApi<T>;
|
|
12470
13316
|
type index_d$5_DoNotDevCookieCategories = DoNotDevCookieCategories;
|
|
12471
13317
|
type index_d$5_DoNotDevError = DoNotDevError;
|
|
12472
13318
|
declare const index_d$5_DoNotDevError: typeof DoNotDevError;
|
|
13319
|
+
type index_d$5_DocumentSubscriptionCallback<T> = DocumentSubscriptionCallback<T>;
|
|
12473
13320
|
type index_d$5_DynamicFormRule = DynamicFormRule;
|
|
13321
|
+
declare const index_d$5_EDITABLE: typeof EDITABLE;
|
|
13322
|
+
declare const index_d$5_ENTITY_HOOK_ERRORS: typeof ENTITY_HOOK_ERRORS;
|
|
12474
13323
|
declare const index_d$5_ENVIRONMENTS: typeof ENVIRONMENTS;
|
|
13324
|
+
declare const index_d$5_ERROR_CODES: typeof ERROR_CODES;
|
|
13325
|
+
declare const index_d$5_ERROR_SEVERITY: typeof ERROR_SEVERITY;
|
|
13326
|
+
declare const index_d$5_ERROR_SOURCE: typeof ERROR_SOURCE;
|
|
12475
13327
|
type index_d$5_Editable = Editable;
|
|
12476
13328
|
type index_d$5_EffectiveConnectionType = EffectiveConnectionType;
|
|
12477
13329
|
type index_d$5_EmailVerificationHookResult = EmailVerificationHookResult;
|
|
@@ -12481,7 +13333,7 @@ type index_d$5_EntityAccessConfig = EntityAccessConfig;
|
|
|
12481
13333
|
type index_d$5_EntityAccessDefaults = EntityAccessDefaults;
|
|
12482
13334
|
type index_d$5_EntityCardListProps = EntityCardListProps;
|
|
12483
13335
|
type index_d$5_EntityDisplayRendererProps<T extends EntityRecord = EntityRecord> = EntityDisplayRendererProps<T>;
|
|
12484
|
-
type index_d$5_EntityField<T extends
|
|
13336
|
+
type index_d$5_EntityField<T extends string = FieldType> = EntityField<T>;
|
|
12485
13337
|
type index_d$5_EntityFormRendererProps<T extends EntityRecord = EntityRecord> = EntityFormRendererProps<T>;
|
|
12486
13338
|
type index_d$5_EntityHookError = EntityHookError;
|
|
12487
13339
|
declare const index_d$5_EntityHookError: typeof EntityHookError;
|
|
@@ -12490,6 +13342,7 @@ type index_d$5_EntityListProps = EntityListProps;
|
|
|
12490
13342
|
type index_d$5_EntityMetadata = EntityMetadata;
|
|
12491
13343
|
type index_d$5_EntityOwnershipConfig = EntityOwnershipConfig;
|
|
12492
13344
|
type index_d$5_EntityOwnershipPublicCondition = EntityOwnershipPublicCondition;
|
|
13345
|
+
type index_d$5_EntityRecommendationsProps = EntityRecommendationsProps;
|
|
12493
13346
|
type index_d$5_EntityRecord = EntityRecord;
|
|
12494
13347
|
type index_d$5_EntityTemplateProps<T extends FieldValues> = EntityTemplateProps<T>;
|
|
12495
13348
|
type index_d$5_EntityTranslations = EntityTranslations;
|
|
@@ -12502,6 +13355,7 @@ type index_d$5_ExchangeTokenRequest = ExchangeTokenRequest;
|
|
|
12502
13355
|
declare const index_d$5_FEATURES: typeof FEATURES;
|
|
12503
13356
|
declare const index_d$5_FEATURE_CONSENT_MATRIX: typeof FEATURE_CONSENT_MATRIX;
|
|
12504
13357
|
declare const index_d$5_FEATURE_STATUS: typeof FEATURE_STATUS;
|
|
13358
|
+
declare const index_d$5_FIELD_TYPES: typeof FIELD_TYPES;
|
|
12505
13359
|
declare const index_d$5_FIREBASE_ERROR_MAP: typeof FIREBASE_ERROR_MAP;
|
|
12506
13360
|
declare const index_d$5_FIRESTORE_ID_PATTERN: typeof FIRESTORE_ID_PATTERN;
|
|
12507
13361
|
type index_d$5_FaviconConfig = FaviconConfig;
|
|
@@ -12562,13 +13416,18 @@ type index_d$5_HeaderZoneConfig = HeaderZoneConfig;
|
|
|
12562
13416
|
type index_d$5_I18nConfig = I18nConfig;
|
|
12563
13417
|
type index_d$5_I18nPluginConfig = I18nPluginConfig;
|
|
12564
13418
|
type index_d$5_I18nProviderProps = I18nProviderProps;
|
|
13419
|
+
type index_d$5_ICallableProvider = ICallableProvider;
|
|
13420
|
+
type index_d$5_ICrudAdapter = ICrudAdapter;
|
|
12565
13421
|
type index_d$5_ID = ID;
|
|
12566
13422
|
type index_d$5_INetworkManager = INetworkManager;
|
|
13423
|
+
type index_d$5_IServerAuthAdapter = IServerAuthAdapter;
|
|
13424
|
+
type index_d$5_IStorageAdapter = IStorageAdapter;
|
|
12567
13425
|
type index_d$5_IStorageManager = IStorageManager;
|
|
12568
13426
|
type index_d$5_IStorageStrategy = IStorageStrategy;
|
|
12569
13427
|
type index_d$5_Invoice = Invoice;
|
|
12570
13428
|
type index_d$5_InvoiceItem = InvoiceItem;
|
|
12571
13429
|
declare const index_d$5_LAYOUT_PRESET: typeof LAYOUT_PRESET;
|
|
13430
|
+
declare const index_d$5_LIST_SCHEMA_TYPE: typeof LIST_SCHEMA_TYPE;
|
|
12572
13431
|
type index_d$5_LanguageInfo = LanguageInfo;
|
|
12573
13432
|
type index_d$5_LayoutConfig = LayoutConfig;
|
|
12574
13433
|
type index_d$5_LayoutPreset = LayoutPreset;
|
|
@@ -12580,11 +13439,13 @@ type index_d$5_LegalHostingInfo = LegalHostingInfo;
|
|
|
12580
13439
|
type index_d$5_LegalJurisdictionInfo = LegalJurisdictionInfo;
|
|
12581
13440
|
type index_d$5_LegalSectionsConfig = LegalSectionsConfig;
|
|
12582
13441
|
type index_d$5_LegalWebsiteInfo = LegalWebsiteInfo;
|
|
13442
|
+
type index_d$5_ListCardLayout = ListCardLayout;
|
|
12583
13443
|
type index_d$5_ListEntitiesRequest = ListEntitiesRequest;
|
|
12584
13444
|
type index_d$5_ListEntitiesResponse = ListEntitiesResponse;
|
|
12585
13445
|
type index_d$5_ListEntityData<T extends Record<string, any>> = ListEntityData<T>;
|
|
12586
13446
|
type index_d$5_ListOptions = ListOptions;
|
|
12587
13447
|
type index_d$5_ListResponse<T> = ListResponse<T>;
|
|
13448
|
+
type index_d$5_ListSchemaType = ListSchemaType;
|
|
12588
13449
|
type index_d$5_LoadingActions = LoadingActions;
|
|
12589
13450
|
type index_d$5_LoadingState = LoadingState;
|
|
12590
13451
|
type index_d$5_MergedBarConfig = MergedBarConfig;
|
|
@@ -12625,8 +13486,10 @@ type index_d$5_OAuthRefreshResponse = OAuthRefreshResponse;
|
|
|
12625
13486
|
type index_d$5_OAuthResult = OAuthResult;
|
|
12626
13487
|
type index_d$5_OAuthStoreActions = OAuthStoreActions;
|
|
12627
13488
|
type index_d$5_OAuthStoreState = OAuthStoreState;
|
|
13489
|
+
declare const index_d$5_ORDER_DIRECTION: typeof ORDER_DIRECTION;
|
|
12628
13490
|
type index_d$5_Observable<T> = Observable<T>;
|
|
12629
13491
|
type index_d$5_OrderByClause = OrderByClause;
|
|
13492
|
+
type index_d$5_OrderDirection = OrderDirection;
|
|
12630
13493
|
declare const index_d$5_PARTNER_ICONS: typeof PARTNER_ICONS;
|
|
12631
13494
|
declare const index_d$5_PAYLOAD_EVENTS: typeof PAYLOAD_EVENTS;
|
|
12632
13495
|
declare const index_d$5_PERMISSIONS: typeof PERMISSIONS;
|
|
@@ -12638,6 +13501,7 @@ declare const index_d$5_PWA_ASSET_TYPES: typeof PWA_ASSET_TYPES;
|
|
|
12638
13501
|
declare const index_d$5_PWA_DISPLAY_MODES: typeof PWA_DISPLAY_MODES;
|
|
12639
13502
|
type index_d$5_PageAuth = PageAuth;
|
|
12640
13503
|
type index_d$5_PageMeta = PageMeta;
|
|
13504
|
+
type index_d$5_PaginatedQueryResult<T> = PaginatedQueryResult<T>;
|
|
12641
13505
|
type index_d$5_PaginationOptions = PaginationOptions;
|
|
12642
13506
|
type index_d$5_PartnerButton = PartnerButton;
|
|
12643
13507
|
type index_d$5_PartnerConnectionState = PartnerConnectionState;
|
|
@@ -12670,13 +13534,15 @@ type index_d$5_ProductDeclaration = ProductDeclaration;
|
|
|
12670
13534
|
declare const index_d$5_ProductDeclarationSchema: typeof ProductDeclarationSchema;
|
|
12671
13535
|
declare const index_d$5_ProductDeclarationsSchema: typeof ProductDeclarationsSchema;
|
|
12672
13536
|
type index_d$5_ProviderInstances = ProviderInstances;
|
|
13537
|
+
type index_d$5_QueryOrderBy = QueryOrderBy;
|
|
13538
|
+
type index_d$5_QueryWhereClause = QueryWhereClause;
|
|
12673
13539
|
declare const index_d$5_ROUTE_SOURCES: typeof ROUTE_SOURCES;
|
|
13540
|
+
type index_d$5_RateLimitBackend = RateLimitBackend;
|
|
12674
13541
|
type index_d$5_RateLimitConfig = RateLimitConfig;
|
|
12675
13542
|
type index_d$5_RateLimitManager = RateLimitManager;
|
|
12676
13543
|
type index_d$5_RateLimitResult = RateLimitResult;
|
|
12677
13544
|
type index_d$5_RateLimitState = RateLimitState;
|
|
12678
13545
|
type index_d$5_RateLimiter = RateLimiter;
|
|
12679
|
-
declare const index_d$5_ReactNode: typeof ReactNode;
|
|
12680
13546
|
type index_d$5_ReadCallback = ReadCallback;
|
|
12681
13547
|
type index_d$5_RedirectOperation = RedirectOperation;
|
|
12682
13548
|
type index_d$5_RedirectOverlayActions = RedirectOverlayActions;
|
|
@@ -12702,6 +13568,11 @@ declare const index_d$5_SUBSCRIPTION_STATUS: typeof SUBSCRIPTION_STATUS;
|
|
|
12702
13568
|
declare const index_d$5_SUBSCRIPTION_TIERS: typeof SUBSCRIPTION_TIERS;
|
|
12703
13569
|
type index_d$5_SchemaMetadata = SchemaMetadata;
|
|
12704
13570
|
type index_d$5_ScopeConfig = ScopeConfig;
|
|
13571
|
+
type index_d$5_SecurityContext = SecurityContext;
|
|
13572
|
+
type index_d$5_SecurityEntityConfig = SecurityEntityConfig;
|
|
13573
|
+
type index_d$5_ServerRateLimitConfig = ServerRateLimitConfig;
|
|
13574
|
+
type index_d$5_ServerRateLimitResult = ServerRateLimitResult;
|
|
13575
|
+
type index_d$5_ServerUserRecord = ServerUserRecord;
|
|
12705
13576
|
type index_d$5_SetCustomClaimsResponse = SetCustomClaimsResponse;
|
|
12706
13577
|
type index_d$5_SidebarZoneConfig = SidebarZoneConfig;
|
|
12707
13578
|
type index_d$5_SlotContent = SlotContent;
|
|
@@ -12709,7 +13580,6 @@ type index_d$5_StorageOptions = StorageOptions;
|
|
|
12709
13580
|
type index_d$5_StorageScope = StorageScope;
|
|
12710
13581
|
type index_d$5_StorageType = StorageType;
|
|
12711
13582
|
type index_d$5_Store<T> = Store<T>;
|
|
12712
|
-
type index_d$5_StoreApi<T> = StoreApi<T>;
|
|
12713
13583
|
type index_d$5_StripeBackConfig = StripeBackConfig;
|
|
12714
13584
|
declare const index_d$5_StripeBackConfigSchema: typeof StripeBackConfigSchema;
|
|
12715
13585
|
type index_d$5_StripeCheckoutRequest = StripeCheckoutRequest;
|
|
@@ -12763,7 +13633,7 @@ type index_d$5_TokenState = TokenState;
|
|
|
12763
13633
|
type index_d$5_TokenStatus = TokenStatus;
|
|
12764
13634
|
type index_d$5_TranslationOptions = TranslationOptions;
|
|
12765
13635
|
type index_d$5_TranslationResource = TranslationResource;
|
|
12766
|
-
type index_d$5_UIFieldOptions<T extends
|
|
13636
|
+
type index_d$5_UIFieldOptions<T extends string = FieldType> = UIFieldOptions<T>;
|
|
12767
13637
|
declare const index_d$5_USER_ROLES: typeof USER_ROLES;
|
|
12768
13638
|
type index_d$5_UniqueConstraintValidator = UniqueConstraintValidator;
|
|
12769
13639
|
type index_d$5_UniqueKeyDefinition = UniqueKeyDefinition;
|
|
@@ -12771,8 +13641,14 @@ type index_d$5_UnsubscribeFn = UnsubscribeFn;
|
|
|
12771
13641
|
type index_d$5_UpdateEntityData<T extends Record<string, any>> = UpdateEntityData<T>;
|
|
12772
13642
|
type index_d$5_UpdateEntityRequest = UpdateEntityRequest;
|
|
12773
13643
|
type index_d$5_UpdateEntityResponse = UpdateEntityResponse;
|
|
13644
|
+
type index_d$5_UploadOptions = UploadOptions;
|
|
13645
|
+
type index_d$5_UploadProgressCallback = UploadProgressCallback;
|
|
13646
|
+
type index_d$5_UploadResult = UploadResult;
|
|
13647
|
+
type index_d$5_UseFunctionsCallResult<TData> = UseFunctionsCallResult<TData>;
|
|
12774
13648
|
type index_d$5_UseFunctionsMutationOptions<TData, TVariables> = UseFunctionsMutationOptions<TData, TVariables>;
|
|
13649
|
+
type index_d$5_UseFunctionsMutationResult<TData, TVariables> = UseFunctionsMutationResult<TData, TVariables>;
|
|
12775
13650
|
type index_d$5_UseFunctionsQueryOptions<TData> = UseFunctionsQueryOptions<TData>;
|
|
13651
|
+
type index_d$5_UseFunctionsQueryResult<TData> = UseFunctionsQueryResult<TData>;
|
|
12776
13652
|
type index_d$5_UseTranslationOptionsEnhanced<KPrefix> = UseTranslationOptionsEnhanced<KPrefix>;
|
|
12777
13653
|
type index_d$5_UserContext = UserContext;
|
|
12778
13654
|
type index_d$5_UserProfile = UserProfile;
|
|
@@ -12780,8 +13656,10 @@ type index_d$5_UserProviderData = UserProviderData;
|
|
|
12780
13656
|
type index_d$5_UserRole = UserRole;
|
|
12781
13657
|
type index_d$5_UserSubscription = UserSubscription;
|
|
12782
13658
|
declare const index_d$5_UserSubscriptionSchema: typeof UserSubscriptionSchema;
|
|
12783
|
-
|
|
12784
|
-
type index_d$
|
|
13659
|
+
declare const index_d$5_VISIBILITY: typeof VISIBILITY;
|
|
13660
|
+
type index_d$5_ValidationRules<T extends string = FieldType> = ValidationRules<T>;
|
|
13661
|
+
type index_d$5_ValueTypeForField<T extends string> = ValueTypeForField<T>;
|
|
13662
|
+
type index_d$5_VerifiedToken = VerifiedToken;
|
|
12785
13663
|
type index_d$5_Visibility = Visibility;
|
|
12786
13664
|
type index_d$5_WebhookEvent = WebhookEvent;
|
|
12787
13665
|
type index_d$5_WebhookEventData = WebhookEventData;
|
|
@@ -12833,8 +13711,8 @@ declare const index_d$5_validateSubscriptionData: typeof validateSubscriptionDat
|
|
|
12833
13711
|
declare const index_d$5_validateUserSubscription: typeof validateUserSubscription;
|
|
12834
13712
|
declare const index_d$5_validateWebhookEvent: typeof validateWebhookEvent;
|
|
12835
13713
|
declare namespace index_d$5 {
|
|
12836
|
-
export { index_d$5_AUTH_EVENTS as AUTH_EVENTS, index_d$5_AUTH_PARTNERS as AUTH_PARTNERS, index_d$5_AUTH_PARTNER_STATE as AUTH_PARTNER_STATE, index_d$5_AuthUserSchema as AuthUserSchema, index_d$5_BILLING_EVENTS as BILLING_EVENTS, index_d$5_BREAKPOINT_RANGES as BREAKPOINT_RANGES, index_d$5_BREAKPOINT_THRESHOLDS as BREAKPOINT_THRESHOLDS, index_d$5_COMMON_TIER_CONFIGS as COMMON_TIER_CONFIGS, index_d$5_CONFIDENCE_LEVELS as CONFIDENCE_LEVELS, index_d$5_CONSENT_CATEGORY as CONSENT_CATEGORY, index_d$5_CONTEXTS as CONTEXTS, index_d$5_CheckoutSessionMetadataSchema as CheckoutSessionMetadataSchema, index_d$5_CreateCheckoutSessionRequestSchema as CreateCheckoutSessionRequestSchema, index_d$5_CreateCheckoutSessionResponseSchema as CreateCheckoutSessionResponseSchema, index_d$5_CustomClaimsSchema as CustomClaimsSchema, index_d$5_DEFAULT_ENTITY_ACCESS as DEFAULT_ENTITY_ACCESS, index_d$5_DEFAULT_LAYOUT_PRESET as DEFAULT_LAYOUT_PRESET, index_d$5_DEFAULT_SUBSCRIPTION as DEFAULT_SUBSCRIPTION, index_d$5_DENSITY as DENSITY, index_d$5_DoNotDevError as DoNotDevError, index_d$5_ENVIRONMENTS as ENVIRONMENTS, index_d$5_EntityHookError as EntityHookError, index_d$5_FEATURES as FEATURES, index_d$5_FEATURE_CONSENT_MATRIX as FEATURE_CONSENT_MATRIX, index_d$5_FEATURE_STATUS as FEATURE_STATUS, index_d$5_FIREBASE_ERROR_MAP as FIREBASE_ERROR_MAP, index_d$5_FIRESTORE_ID_PATTERN as FIRESTORE_ID_PATTERN, index_d$5_GITHUB_PERMISSION_LEVELS as GITHUB_PERMISSION_LEVELS, index_d$5_LAYOUT_PRESET as LAYOUT_PRESET, index_d$5_OAUTH_EVENTS as OAUTH_EVENTS, index_d$5_OAUTH_PARTNERS as OAUTH_PARTNERS, index_d$5_PARTNER_ICONS as PARTNER_ICONS, index_d$5_PAYLOAD_EVENTS as PAYLOAD_EVENTS, index_d$5_PERMISSIONS as PERMISSIONS, index_d$5_PLATFORMS as PLATFORMS, index_d$5_PWA_ASSET_TYPES as PWA_ASSET_TYPES, index_d$5_PWA_DISPLAY_MODES as PWA_DISPLAY_MODES, index_d$5_ProductDeclarationSchema as ProductDeclarationSchema, index_d$5_ProductDeclarationsSchema as ProductDeclarationsSchema, index_d$5_ROUTE_SOURCES as ROUTE_SOURCES, index_d$
|
|
12837
|
-
export type { index_d$5_AccountLinkResult as AccountLinkResult, index_d$5_AccountLinkingInfo as AccountLinkingInfo, index_d$5_AdminCheckHookResult as AdminCheckHookResult, index_d$5_AdminClaims as AdminClaims, index_d$5_AggregateConfig as AggregateConfig, index_d$5_AggregateFilterOperator as AggregateFilterOperator, index_d$5_AggregateOperation as AggregateOperation, index_d$5_AggregateRequest as AggregateRequest, index_d$5_AggregateResponse as AggregateResponse, index_d$5_AnyFieldValue as AnyFieldValue, index_d$5_ApiResponse as ApiResponse, index_d$5_AppConfig as AppConfig, index_d$5_AppCookieCategories as AppCookieCategories, index_d$5_AppMetadata as AppMetadata, index_d$5_AppProvidersProps as AppProvidersProps, index_d$5_AssetsPluginConfig as AssetsPluginConfig, index_d$5_AttemptRecord as AttemptRecord, index_d$5_AuthAPI as AuthAPI, index_d$5_AuthActions as AuthActions, index_d$5_AuthConfig as AuthConfig, index_d$5_AuthContextValue as AuthContextValue, index_d$5_AuthCoreHookResult as AuthCoreHookResult, index_d$5_AuthError as AuthError, index_d$5_AuthEventData as AuthEventData, index_d$5_AuthEventKey as AuthEventKey, index_d$5_AuthEventName as AuthEventName, index_d$5_AuthMethod as AuthMethod, index_d$5_AuthPartner as AuthPartner, index_d$5_AuthPartnerButton as AuthPartnerButton, index_d$5_AuthPartnerHookResult as AuthPartnerHookResult, index_d$5_AuthPartnerId as AuthPartnerId, index_d$5_AuthPartnerResult as AuthPartnerResult, index_d$5_AuthPartnerState as AuthPartnerState, index_d$5_AuthProvider as AuthProvider, index_d$5_AuthProviderProps as AuthProviderProps, index_d$5_AuthRedirectHookResult as AuthRedirectHookResult, index_d$5_AuthRedirectOperation as AuthRedirectOperation, index_d$5_AuthRedirectOptions as AuthRedirectOptions, index_d$5_AuthResult as AuthResult, index_d$5_AuthState as AuthState, index_d$5_AuthStateStore as AuthStateStore, index_d$5_AuthStatus as AuthStatus, index_d$5_AuthTokenHookResult as AuthTokenHookResult, index_d$5_AuthUser as AuthUser, index_d$5_BaseActions as BaseActions, index_d$5_BaseCredentials as BaseCredentials, index_d$5_BaseDocument as BaseDocument, index_d$5_BaseEntityFields as BaseEntityFields, index_d$5_BasePartnerState as BasePartnerState, index_d$5_BaseState as BaseState, index_d$5_BaseStoreActions as BaseStoreActions, index_d$5_BaseStoreState as BaseStoreState, index_d$5_BaseUserProfile as BaseUserProfile, index_d$5_BasicUserInfo as BasicUserInfo, index_d$5_BillingAPI as BillingAPI, index_d$5_BillingAdapter as BillingAdapter, index_d$5_BillingErrorCode as BillingErrorCode, index_d$5_BillingEvent as BillingEvent, index_d$5_BillingEventData as BillingEventData, index_d$5_BillingEventKey as BillingEventKey, index_d$5_BillingEventName as BillingEventName, index_d$5_BillingProvider as BillingProvider, index_d$5_BillingProviderConfig as BillingProviderConfig, index_d$5_BillingRedirectOperation as BillingRedirectOperation, index_d$5_Breakpoint as Breakpoint, index_d$5_BreakpointUtils as BreakpointUtils, index_d$5_BusinessEntity as BusinessEntity, index_d$5_CachedError as CachedError, index_d$5_CanAPI as CanAPI, index_d$5_CheckGitHubAccessRequest as CheckGitHubAccessRequest, index_d$5_CheckoutMode as CheckoutMode, index_d$5_CheckoutOptions as CheckoutOptions, index_d$5_CheckoutSessionMetadata as CheckoutSessionMetadata, index_d$5_ColumnDef as ColumnDef, index_d$5_CommonSubscriptionFeatures as CommonSubscriptionFeatures, index_d$5_CommonTranslations as CommonTranslations, index_d$5_ConfidenceLevel as ConfidenceLevel, index_d$5_ConsentAPI as ConsentAPI, index_d$5_ConsentActions as ConsentActions, index_d$5_ConsentCategory as ConsentCategory, index_d$5_ConsentState as ConsentState, index_d$5_Context as Context, index_d$5_CookieOptions as CookieOptions, index_d$5_CreateCheckoutSessionRequest as CreateCheckoutSessionRequest, index_d$5_CreateCheckoutSessionResponse as CreateCheckoutSessionResponse, index_d$5_CreateEntityData as CreateEntityData, index_d$5_CreateEntityRequest as CreateEntityRequest, index_d$5_CreateEntityResponse as CreateEntityResponse, index_d$5_CrudAPI as CrudAPI, index_d$5_CrudConfig as CrudConfig, index_d$5_CustomClaims as CustomClaims, index_d$5_CustomStoreConfig as CustomStoreConfig, index_d$5_DateValue as DateValue, index_d$5_DeleteEntityRequest as DeleteEntityRequest, index_d$5_DeleteEntityResponse as DeleteEntityResponse, index_d$5_Density as Density, index_d$5_DnDevOverride as DnDevOverride, index_d$5_DndevFrameworkConfig as DndevFrameworkConfig, index_d$5_DoNotDevCookieCategories as DoNotDevCookieCategories, index_d$5_DynamicFormRule as DynamicFormRule, index_d$5_Editable as Editable, index_d$5_EffectiveConnectionType as EffectiveConnectionType, index_d$5_EmailVerificationHookResult as EmailVerificationHookResult, index_d$5_EmailVerificationStatus as EmailVerificationStatus, index_d$5_Entity as Entity, index_d$5_EntityAccessConfig as EntityAccessConfig, index_d$5_EntityAccessDefaults as EntityAccessDefaults, index_d$5_EntityCardListProps as EntityCardListProps, index_d$5_EntityDisplayRendererProps as EntityDisplayRendererProps, index_d$5_EntityField as EntityField, index_d$5_EntityFormRendererProps as EntityFormRendererProps, index_d$5_EntityHookErrors as EntityHookErrors, index_d$5_EntityListProps as EntityListProps, index_d$5_EntityMetadata as EntityMetadata, index_d$5_EntityOwnershipConfig as EntityOwnershipConfig, index_d$5_EntityOwnershipPublicCondition as EntityOwnershipPublicCondition, index_d$5_EntityRecord as EntityRecord, index_d$5_EntityTemplateProps as EntityTemplateProps, index_d$5_EntityTranslations as EntityTranslations, index_d$5_EnvironmentMode as EnvironmentMode, index_d$5_ErrorCode as ErrorCode, index_d$5_ErrorSeverity as ErrorSeverity, index_d$5_ErrorSource as ErrorSource, index_d$5_ExchangeTokenParams as ExchangeTokenParams, index_d$5_ExchangeTokenRequest as ExchangeTokenRequest, index_d$5_FaviconConfig as FaviconConfig, index_d$5_Feature as Feature, index_d$5_FeatureAccessHookResult as FeatureAccessHookResult, index_d$5_FeatureConsentRequirement as FeatureConsentRequirement, index_d$5_FeatureHookResult as FeatureHookResult, index_d$5_FeatureId as FeatureId, index_d$5_FeatureName as FeatureName, index_d$5_FeatureStatus as FeatureStatus, index_d$5_FeaturesConfig as FeaturesConfig, index_d$5_FeaturesPluginConfig as FeaturesPluginConfig, index_d$5_FeaturesRequiringAnyConsent as FeaturesRequiringAnyConsent, index_d$5_FeaturesRequiringConsent as FeaturesRequiringConsent, index_d$5_FeaturesWithoutConsent as FeaturesWithoutConsent, index_d$5_FieldCondition as FieldCondition, index_d$5_FieldType as FieldType, index_d$5_FieldTypeToValue as FieldTypeToValue, index_d$5_FileAsset as FileAsset, index_d$5_FirebaseCallOptions as FirebaseCallOptions, index_d$5_FirebaseConfig as FirebaseConfig, index_d$5_FirestoreTimestamp as FirestoreTimestamp, index_d$5_FirestoreUniqueConstraintValidator as FirestoreUniqueConstraintValidator, index_d$5_FooterConfig as FooterConfig, index_d$5_FooterZoneConfig as FooterZoneConfig, index_d$5_FormConfig as FormConfig, index_d$5_FormStep as FormStep, index_d$5_FunctionCallConfig as FunctionCallConfig, index_d$5_FunctionCallContext as FunctionCallContext, index_d$5_FunctionCallOptions as FunctionCallOptions, index_d$5_FunctionCallResult as FunctionCallResult, index_d$5_FunctionClient as FunctionClient, index_d$5_FunctionClientFactoryOptions as FunctionClientFactoryOptions, index_d$5_FunctionDefaults as FunctionDefaults, index_d$5_FunctionEndpoint as FunctionEndpoint, index_d$5_FunctionError as FunctionError, index_d$5_FunctionLoader as FunctionLoader, index_d$5_FunctionMemory as FunctionMemory, index_d$5_FunctionMeta as FunctionMeta, index_d$5_FunctionPlatform as FunctionPlatform, index_d$5_FunctionResponse as FunctionResponse, index_d$5_FunctionSchema as FunctionSchema, index_d$5_FunctionSchemas as FunctionSchemas, index_d$5_FunctionSystem as FunctionSystem, index_d$5_FunctionTrigger as FunctionTrigger, index_d$5_FunctionsConfig as FunctionsConfig, index_d$5_GetCustomClaimsResponse as GetCustomClaimsResponse, index_d$5_GetEntityData as GetEntityData, index_d$5_GetEntityRequest as GetEntityRequest, index_d$5_GetEntityResponse as GetEntityResponse, index_d$5_GetUserAuthStatusResponse as GetUserAuthStatusResponse, index_d$5_GitHubPermission as GitHubPermission, index_d$5_GitHubRepoConfig as GitHubRepoConfig, index_d$5_GrantGitHubAccessRequest as GrantGitHubAccessRequest, index_d$5_GroupByDefinition as GroupByDefinition, index_d$5_HeaderZoneConfig as HeaderZoneConfig, index_d$5_I18nConfig as I18nConfig, index_d$5_I18nPluginConfig as I18nPluginConfig, index_d$5_I18nProviderProps as I18nProviderProps, index_d$5_ID as ID, index_d$5_INetworkManager as INetworkManager, index_d$5_IStorageManager as IStorageManager, index_d$5_IStorageStrategy as IStorageStrategy, index_d$5_Invoice as Invoice, index_d$5_InvoiceItem as InvoiceItem, index_d$5_LanguageInfo as LanguageInfo, index_d$5_LayoutConfig as LayoutConfig, index_d$5_LayoutPreset as LayoutPreset, index_d$5_LegalCompanyInfo as LegalCompanyInfo, index_d$5_LegalConfig as LegalConfig, index_d$5_LegalContactInfo as LegalContactInfo, index_d$5_LegalDirectorInfo as LegalDirectorInfo, index_d$5_LegalHostingInfo as LegalHostingInfo, index_d$5_LegalJurisdictionInfo as LegalJurisdictionInfo, index_d$5_LegalSectionsConfig as LegalSectionsConfig, index_d$5_LegalWebsiteInfo as LegalWebsiteInfo, index_d$5_ListEntitiesRequest as ListEntitiesRequest, index_d$5_ListEntitiesResponse as ListEntitiesResponse, index_d$5_ListEntityData as ListEntityData, index_d$5_ListOptions as ListOptions, index_d$5_ListResponse as ListResponse, index_d$5_LoadingActions as LoadingActions, index_d$5_LoadingState as LoadingState, index_d$5_MergedBarConfig as MergedBarConfig, index_d$5_MetricDefinition as MetricDefinition, index_d$5_MobileBehaviorConfig as MobileBehaviorConfig, index_d$5_ModalActions as ModalActions, index_d$5_ModalState as ModalState, index_d$5_MutationResponse as MutationResponse, index_d$5_NavigationRoute as NavigationRoute, index_d$5_NetworkCheckConfig as NetworkCheckConfig, index_d$5_NetworkConnectionType as NetworkConnectionType, index_d$5_NetworkReconnectCallback as NetworkReconnectCallback, NetworkState$1 as NetworkState, index_d$5_NetworkStatus as NetworkStatus, index_d$5_NetworkStatusHookResult as NetworkStatusHookResult, index_d$5_OAuthAPI as OAuthAPI, index_d$5_OAuthApiRequestOptions as OAuthApiRequestOptions, index_d$5_OAuthCallbackHookResult as OAuthCallbackHookResult, index_d$5_OAuthConnection as OAuthConnection, index_d$5_OAuthConnectionInfo as OAuthConnectionInfo, index_d$5_OAuthConnectionRequest as OAuthConnectionRequest, index_d$5_OAuthConnectionStatus as OAuthConnectionStatus, index_d$5_OAuthCredentials as OAuthCredentials, index_d$5_OAuthEventData as OAuthEventData, index_d$5_OAuthEventKey as OAuthEventKey, index_d$5_OAuthEventName as OAuthEventName, index_d$5_OAuthPartner as OAuthPartner, index_d$5_OAuthPartnerButton as OAuthPartnerButton, index_d$5_OAuthPartnerHookResult as OAuthPartnerHookResult, index_d$5_OAuthPartnerId as OAuthPartnerId, index_d$5_OAuthPartnerResult as OAuthPartnerResult, index_d$5_OAuthPartnerState as OAuthPartnerState, index_d$5_OAuthPurpose as OAuthPurpose, index_d$5_OAuthRedirectOperation as OAuthRedirectOperation, index_d$5_OAuthRefreshRequest as OAuthRefreshRequest, index_d$5_OAuthRefreshResponse as OAuthRefreshResponse, index_d$5_OAuthResult as OAuthResult, index_d$5_OAuthStoreActions as OAuthStoreActions, index_d$5_OAuthStoreState as OAuthStoreState, index_d$5_Observable as Observable, index_d$5_OrderByClause as OrderByClause, index_d$5_PWAAssetType as PWAAssetType, index_d$5_PWADisplayMode as PWADisplayMode, index_d$5_PWAPluginConfig as PWAPluginConfig, index_d$5_PageAuth as PageAuth, index_d$5_PageMeta as PageMeta, index_d$5_PaginationOptions as PaginationOptions, index_d$5_PartnerButton as PartnerButton, index_d$5_PartnerConnectionState as PartnerConnectionState, index_d$5_PartnerIconId as PartnerIconId, index_d$5_PartnerId as PartnerId, index_d$5_PartnerResult as PartnerResult, index_d$5_PartnerType as PartnerType, index_d$5_PayloadCacheEventData as PayloadCacheEventData, index_d$5_PayloadDocument as PayloadDocument, index_d$5_PayloadDocumentEventData as PayloadDocumentEventData, index_d$5_PayloadEventKey as PayloadEventKey, index_d$5_PayloadEventName as PayloadEventName, index_d$5_PayloadGlobalEventData as PayloadGlobalEventData, index_d$5_PayloadMediaEventData as PayloadMediaEventData, index_d$5_PayloadPageRegenerationEventData as PayloadPageRegenerationEventData, index_d$5_PayloadRequest as PayloadRequest, index_d$5_PayloadUserEventData as PayloadUserEventData, index_d$5_PaymentEventData as PaymentEventData, index_d$5_PaymentMethod as PaymentMethod, index_d$5_PaymentMethodType as PaymentMethodType, index_d$5_PaymentMode as PaymentMode, index_d$5_Permission as Permission, index_d$5_Picture as Picture, index_d$5_Platform as Platform, index_d$5_PresetConfig as PresetConfig, index_d$5_PresetRegistry as PresetRegistry, index_d$5_ProcessPaymentSuccessRequest as ProcessPaymentSuccessRequest, index_d$5_ProcessPaymentSuccessResponse as ProcessPaymentSuccessResponse, index_d$5_ProductDeclaration as ProductDeclaration, index_d$5_ProviderInstances as ProviderInstances, QueryConfig$1 as QueryConfig, index_d$5_RateLimitConfig as RateLimitConfig, index_d$5_RateLimitManager as RateLimitManager, index_d$5_RateLimitResult as RateLimitResult, index_d$5_RateLimitState as RateLimitState, index_d$5_RateLimiter as RateLimiter, index_d$5_ReadCallback as ReadCallback, index_d$5_RedirectOperation as RedirectOperation, index_d$5_RedirectOverlayActions as RedirectOverlayActions, index_d$5_RedirectOverlayConfig as RedirectOverlayConfig, index_d$5_RedirectOverlayPhase as RedirectOverlayPhase, index_d$5_RedirectOverlayState as RedirectOverlayState, index_d$5_Reference as Reference, index_d$5_RefreshSubscriptionRequest as RefreshSubscriptionRequest, index_d$5_RefreshSubscriptionResponse as RefreshSubscriptionResponse, index_d$5_RemoveCustomClaimsResponse as RemoveCustomClaimsResponse, index_d$5_ResolvedLayoutConfig as ResolvedLayoutConfig, index_d$5_RevokeGitHubAccessRequest as RevokeGitHubAccessRequest, index_d$5_RouteMeta as RouteMeta, index_d$5_RouteSource as RouteSource, index_d$5_RoutesPluginConfig as RoutesPluginConfig, index_d$5_SEOConfig as SEOConfig, index_d$5_SchemaMetadata as SchemaMetadata, index_d$5_ScopeConfig as ScopeConfig, index_d$5_SetCustomClaimsResponse as SetCustomClaimsResponse, index_d$5_SidebarZoneConfig as SidebarZoneConfig, index_d$5_SlotContent as SlotContent, index_d$5_StorageOptions as StorageOptions, index_d$5_StorageScope as StorageScope, index_d$5_StorageType as StorageType, index_d$5_Store as Store, index_d$5_StoreApi as StoreApi, index_d$5_StripeBackConfig as StripeBackConfig, index_d$5_StripeCheckoutRequest as StripeCheckoutRequest, index_d$5_StripeCheckoutResponse as StripeCheckoutResponse, index_d$5_StripeCheckoutSessionEventData as StripeCheckoutSessionEventData, index_d$5_StripeConfig as StripeConfig, index_d$5_StripeCustomer as StripeCustomer, index_d$5_StripeCustomerEventData as StripeCustomerEventData, index_d$5_StripeEventData as StripeEventData, index_d$5_StripeEventKey as StripeEventKey, index_d$5_StripeEventName as StripeEventName, index_d$5_StripeFrontConfig as StripeFrontConfig, index_d$5_StripeInvoice as StripeInvoice, index_d$5_StripeInvoiceEventData as StripeInvoiceEventData, index_d$5_StripePayment as StripePayment, index_d$5_StripePaymentIntentEventData as StripePaymentIntentEventData, index_d$5_StripePaymentMethod as StripePaymentMethod, index_d$5_StripePrice as StripePrice, index_d$5_StripeProduct as StripeProduct, index_d$5_StripeProvider as StripeProvider, index_d$5_StripeSubscription as StripeSubscription, index_d$5_StripeSubscriptionData as StripeSubscriptionData, index_d$5_StripeWebhookEvent as StripeWebhookEvent, index_d$5_StripeWebhookEventData as StripeWebhookEventData, index_d$5_Subscription as Subscription, index_d$5_SubscriptionClaims as SubscriptionClaims, index_d$5_SubscriptionConfig as SubscriptionConfig, index_d$5_SubscriptionData as SubscriptionData, index_d$5_SubscriptionDuration as SubscriptionDuration, index_d$5_SubscriptionEventData as SubscriptionEventData, index_d$5_SubscriptionHookResult as SubscriptionHookResult, index_d$5_SubscriptionInfo as SubscriptionInfo, index_d$5_SubscriptionStatus as SubscriptionStatus, index_d$5_SubscriptionTier as SubscriptionTier, index_d$5_SupportedLanguage as SupportedLanguage, index_d$5_ThemeActions as ThemeActions, index_d$5_ThemeInfo as ThemeInfo, index_d$5_ThemeMode as ThemeMode, index_d$5_ThemeState as ThemeState, index_d$5_ThemesPluginConfig as ThemesPluginConfig, index_d$5_TierAccessHookResult as TierAccessHookResult, index_d$5_Timestamp as Timestamp, index_d$5_TokenInfo as TokenInfo, index_d$5_TokenResponse as TokenResponse, index_d$5_TokenState as TokenState, index_d$5_TokenStatus as TokenStatus, index_d$5_TranslationOptions as TranslationOptions, index_d$5_TranslationResource as TranslationResource, index_d$5_UIFieldOptions as UIFieldOptions, index_d$5_UniqueConstraintValidator as UniqueConstraintValidator, index_d$5_UniqueKeyDefinition as UniqueKeyDefinition, index_d$5_UnsubscribeFn as UnsubscribeFn, index_d$5_UpdateEntityData as UpdateEntityData, index_d$5_UpdateEntityRequest as UpdateEntityRequest, index_d$5_UpdateEntityResponse as UpdateEntityResponse, index_d$5_UseFunctionsMutationOptions as UseFunctionsMutationOptions, index_d$5_UseFunctionsQueryOptions as UseFunctionsQueryOptions, index_d$5_UseTranslationOptionsEnhanced as UseTranslationOptionsEnhanced, index_d$5_UserContext as UserContext, index_d$5_UserProfile as UserProfile, index_d$5_UserProviderData as UserProviderData, index_d$5_UserRole as UserRole, index_d$5_UserSubscription as UserSubscription, index_d$5_ValidationRules as ValidationRules, index_d$5_ValueTypeForField as ValueTypeForField, index_d$5_Visibility as Visibility, index_d$5_WebhookEvent as WebhookEvent, index_d$5_WebhookEventData as WebhookEventData, index_d$5_WhereClause as WhereClause, index_d$5_WhereOperator as WhereOperator, index_d$5_WithMetadata as WithMetadata, index_d$5_dndevSchema as dndevSchema };
|
|
13714
|
+
export { index_d$5_AGGREGATE_FILTER_OPERATORS as AGGREGATE_FILTER_OPERATORS, index_d$5_AGGREGATE_OPERATIONS as AGGREGATE_OPERATIONS, index_d$5_AUTH_EVENTS as AUTH_EVENTS, index_d$5_AUTH_PARTNERS as AUTH_PARTNERS, index_d$5_AUTH_PARTNER_STATE as AUTH_PARTNER_STATE, index_d$5_AuthUserSchema as AuthUserSchema, index_d$5_BILLING_EVENTS as BILLING_EVENTS, index_d$5_BREAKPOINT_RANGES as BREAKPOINT_RANGES, index_d$5_BREAKPOINT_THRESHOLDS as BREAKPOINT_THRESHOLDS, index_d$5_COMMON_TIER_CONFIGS as COMMON_TIER_CONFIGS, index_d$5_CONFIDENCE_LEVELS as CONFIDENCE_LEVELS, index_d$5_CONSENT_CATEGORY as CONSENT_CATEGORY, index_d$5_CONTEXTS as CONTEXTS, index_d$5_CRUD_OPERATORS as CRUD_OPERATORS, index_d$5_CheckoutSessionMetadataSchema as CheckoutSessionMetadataSchema, index_d$5_CreateCheckoutSessionRequestSchema as CreateCheckoutSessionRequestSchema, index_d$5_CreateCheckoutSessionResponseSchema as CreateCheckoutSessionResponseSchema, index_d$5_CustomClaimsSchema as CustomClaimsSchema, index_d$5_DEFAULT_ENTITY_ACCESS as DEFAULT_ENTITY_ACCESS, index_d$5_DEFAULT_LAYOUT_PRESET as DEFAULT_LAYOUT_PRESET, index_d$5_DEFAULT_SUBSCRIPTION as DEFAULT_SUBSCRIPTION, index_d$5_DENSITY as DENSITY, index_d$5_DoNotDevError as DoNotDevError, index_d$5_EDITABLE as EDITABLE, index_d$5_ENTITY_HOOK_ERRORS as ENTITY_HOOK_ERRORS, index_d$5_ENVIRONMENTS as ENVIRONMENTS, index_d$5_ERROR_CODES as ERROR_CODES, index_d$5_ERROR_SEVERITY as ERROR_SEVERITY, index_d$5_ERROR_SOURCE as ERROR_SOURCE, index_d$5_EntityHookError as EntityHookError, index_d$5_FEATURES as FEATURES, index_d$5_FEATURE_CONSENT_MATRIX as FEATURE_CONSENT_MATRIX, index_d$5_FEATURE_STATUS as FEATURE_STATUS, index_d$5_FIELD_TYPES as FIELD_TYPES, index_d$5_FIREBASE_ERROR_MAP as FIREBASE_ERROR_MAP, index_d$5_FIRESTORE_ID_PATTERN as FIRESTORE_ID_PATTERN, index_d$5_GITHUB_PERMISSION_LEVELS as GITHUB_PERMISSION_LEVELS, index_d$5_LAYOUT_PRESET as LAYOUT_PRESET, index_d$5_LIST_SCHEMA_TYPE as LIST_SCHEMA_TYPE, index_d$5_OAUTH_EVENTS as OAUTH_EVENTS, index_d$5_OAUTH_PARTNERS as OAUTH_PARTNERS, index_d$5_ORDER_DIRECTION as ORDER_DIRECTION, index_d$5_PARTNER_ICONS as PARTNER_ICONS, index_d$5_PAYLOAD_EVENTS as PAYLOAD_EVENTS, index_d$5_PERMISSIONS as PERMISSIONS, index_d$5_PLATFORMS as PLATFORMS, index_d$5_PWA_ASSET_TYPES as PWA_ASSET_TYPES, index_d$5_PWA_DISPLAY_MODES as PWA_DISPLAY_MODES, index_d$5_ProductDeclarationSchema as ProductDeclarationSchema, index_d$5_ProductDeclarationsSchema as ProductDeclarationsSchema, index_d$5_ROUTE_SOURCES as ROUTE_SOURCES, index_d$5_STORAGE_SCOPES as STORAGE_SCOPES, index_d$5_STORAGE_TYPES as STORAGE_TYPES, index_d$5_STRIPE_EVENTS as STRIPE_EVENTS, index_d$5_STRIPE_MODES as STRIPE_MODES, index_d$5_SUBSCRIPTION_DURATIONS as SUBSCRIPTION_DURATIONS, index_d$5_SUBSCRIPTION_STATUS as SUBSCRIPTION_STATUS, index_d$5_SUBSCRIPTION_TIERS as SUBSCRIPTION_TIERS, index_d$5_StripeBackConfigSchema as StripeBackConfigSchema, index_d$5_StripeFrontConfigSchema as StripeFrontConfigSchema, index_d$5_StripePaymentSchema as StripePaymentSchema, index_d$5_StripeSubscriptionSchema as StripeSubscriptionSchema, index_d$5_SubscriptionClaimsSchema as SubscriptionClaimsSchema, index_d$5_SubscriptionDataSchema as SubscriptionDataSchema, index_d$5_USER_ROLES as USER_ROLES, index_d$5_UserSubscriptionSchema as UserSubscriptionSchema, index_d$5_VISIBILITY as VISIBILITY, index_d$5_WebhookEventSchema as WebhookEventSchema, index_d$5_checkGitHubAccessSchema as checkGitHubAccessSchema, index_d$5_createDefaultSubscriptionClaims as createDefaultSubscriptionClaims, index_d$5_createDefaultUserProfile as createDefaultUserProfile, index_d$5_createEntitySchema as createEntitySchema, index_d$5_deleteEntitySchema as deleteEntitySchema, index_d$5_disconnectOAuthSchema as disconnectOAuthSchema, index_d$5_exchangeTokenSchema as exchangeTokenSchema, index_d$5_getBreakpointFromWidth as getBreakpointFromWidth, index_d$5_getBreakpointUtils as getBreakpointUtils, index_d$5_getConnectionsSchema as getConnectionsSchema, index_d$5_getEntitySchema as getEntitySchema, index_d$5_githubPermissionSchema as githubPermissionSchema, index_d$5_githubRepoConfigSchema as githubRepoConfigSchema, index_d$5_grantGitHubAccessSchema as grantGitHubAccessSchema, index_d$5_isAuthPartnerId as isAuthPartnerId, index_d$5_isBreakpoint as isBreakpoint, index_d$5_isOAuthPartnerId as isOAuthPartnerId, index_d$5_listEntitiesSchema as listEntitiesSchema, index_d$5_overrideFeatures as overrideFeatures, index_d$5_overridePaymentModes as overridePaymentModes, index_d$5_overridePermissions as overridePermissions, index_d$5_overrideSubscriptionStatus as overrideSubscriptionStatus, index_d$5_overrideSubscriptionTiers as overrideSubscriptionTiers, index_d$5_overrideUserRoles as overrideUserRoles, index_d$5_refreshTokenSchema as refreshTokenSchema, index_d$5_revokeGitHubAccessSchema as revokeGitHubAccessSchema, index_d$5_updateEntitySchema as updateEntitySchema, index_d$5_validateAuthPartners as validateAuthPartners, index_d$5_validateAuthSchemas as validateAuthSchemas, index_d$5_validateAuthUser as validateAuthUser, index_d$5_validateBillingSchemas as validateBillingSchemas, index_d$5_validateCheckoutSessionMetadata as validateCheckoutSessionMetadata, index_d$5_validateCreateCheckoutSessionRequest as validateCreateCheckoutSessionRequest, index_d$5_validateCreateCheckoutSessionResponse as validateCreateCheckoutSessionResponse, index_d$5_validateCustomClaims as validateCustomClaims, index_d$5_validateOAuthPartners as validateOAuthPartners, index_d$5_validateStripeBackConfig as validateStripeBackConfig, index_d$5_validateStripeFrontConfig as validateStripeFrontConfig, index_d$5_validateSubscriptionClaims as validateSubscriptionClaims, index_d$5_validateSubscriptionData as validateSubscriptionData, index_d$5_validateUserSubscription as validateUserSubscription, index_d$5_validateWebhookEvent as validateWebhookEvent };
|
|
13715
|
+
export type { index_d$5_AccountLinkResult as AccountLinkResult, index_d$5_AccountLinkingInfo as AccountLinkingInfo, index_d$5_AdminCheckHookResult as AdminCheckHookResult, index_d$5_AdminClaims as AdminClaims, index_d$5_AggregateConfig as AggregateConfig, index_d$5_AggregateFilterOperator as AggregateFilterOperator, index_d$5_AggregateOperation as AggregateOperation, index_d$5_AggregateRequest as AggregateRequest, index_d$5_AggregateResponse as AggregateResponse, index_d$5_AnyFieldValue as AnyFieldValue, index_d$5_ApiResponse as ApiResponse, index_d$5_AppConfig as AppConfig, index_d$5_AppCookieCategories as AppCookieCategories, index_d$5_AppMetadata as AppMetadata, index_d$5_AppProvidersProps as AppProvidersProps, index_d$5_AssetsPluginConfig as AssetsPluginConfig, index_d$5_AttemptRecord as AttemptRecord, index_d$5_AuditEvent as AuditEvent, index_d$5_AuditEventType as AuditEventType, index_d$5_AuthAPI as AuthAPI, index_d$5_AuthActions as AuthActions, index_d$5_AuthConfig as AuthConfig, index_d$5_AuthContextValue as AuthContextValue, index_d$5_AuthCoreHookResult as AuthCoreHookResult, index_d$5_AuthError as AuthError, index_d$5_AuthEventData as AuthEventData, index_d$5_AuthEventKey as AuthEventKey, index_d$5_AuthEventName as AuthEventName, index_d$5_AuthHardeningContext as AuthHardeningContext, index_d$5_AuthMethod as AuthMethod, index_d$5_AuthPartner as AuthPartner, index_d$5_AuthPartnerButton as AuthPartnerButton, index_d$5_AuthPartnerHookResult as AuthPartnerHookResult, index_d$5_AuthPartnerId as AuthPartnerId, index_d$5_AuthPartnerResult as AuthPartnerResult, index_d$5_AuthPartnerState as AuthPartnerState, index_d$5_AuthProvider as AuthProvider, index_d$5_AuthProviderProps as AuthProviderProps, index_d$5_AuthRedirectHookResult as AuthRedirectHookResult, index_d$5_AuthRedirectOperation as AuthRedirectOperation, index_d$5_AuthRedirectOptions as AuthRedirectOptions, index_d$5_AuthResult as AuthResult, index_d$5_AuthState as AuthState, index_d$5_AuthStateStore as AuthStateStore, index_d$5_AuthStatus as AuthStatus, index_d$5_AuthTokenHookResult as AuthTokenHookResult, index_d$5_AuthUser as AuthUser, index_d$5_BaseActions as BaseActions, index_d$5_BaseCredentials as BaseCredentials, index_d$5_BaseDocument as BaseDocument, index_d$5_BaseEntityFields as BaseEntityFields, index_d$5_BasePartnerState as BasePartnerState, index_d$5_BaseState as BaseState, index_d$5_BaseStoreActions as BaseStoreActions, index_d$5_BaseStoreState as BaseStoreState, index_d$5_BaseUserProfile as BaseUserProfile, index_d$5_BasicUserInfo as BasicUserInfo, index_d$5_BillingAPI as BillingAPI, index_d$5_BillingAdapter as BillingAdapter, index_d$5_BillingErrorCode as BillingErrorCode, index_d$5_BillingEvent as BillingEvent, index_d$5_BillingEventData as BillingEventData, index_d$5_BillingEventKey as BillingEventKey, index_d$5_BillingEventName as BillingEventName, index_d$5_BillingProvider as BillingProvider, index_d$5_BillingProviderConfig as BillingProviderConfig, index_d$5_BillingRedirectOperation as BillingRedirectOperation, index_d$5_Breakpoint as Breakpoint, index_d$5_BreakpointUtils as BreakpointUtils, index_d$5_BuiltInFieldType as BuiltInFieldType, index_d$5_BusinessEntity as BusinessEntity, index_d$5_CachedError as CachedError, index_d$5_CanAPI as CanAPI, index_d$5_CheckGitHubAccessRequest as CheckGitHubAccessRequest, index_d$5_CheckoutMode as CheckoutMode, index_d$5_CheckoutOptions as CheckoutOptions, index_d$5_CheckoutSessionMetadata as CheckoutSessionMetadata, index_d$5_CollectionSubscriptionCallback as CollectionSubscriptionCallback, index_d$5_ColumnDef as ColumnDef, index_d$5_CommonSubscriptionFeatures as CommonSubscriptionFeatures, index_d$5_CommonTranslations as CommonTranslations, index_d$5_ConfidenceLevel as ConfidenceLevel, index_d$5_ConsentAPI as ConsentAPI, index_d$5_ConsentActions as ConsentActions, index_d$5_ConsentCategory as ConsentCategory, index_d$5_ConsentState as ConsentState, index_d$5_Context as Context, index_d$5_CookieOptions as CookieOptions, index_d$5_CreateCheckoutSessionRequest as CreateCheckoutSessionRequest, index_d$5_CreateCheckoutSessionResponse as CreateCheckoutSessionResponse, index_d$5_CreateEntityData as CreateEntityData, index_d$5_CreateEntityRequest as CreateEntityRequest, index_d$5_CreateEntityResponse as CreateEntityResponse, index_d$5_CrudAPI as CrudAPI, index_d$5_CrudCardProps as CrudCardProps, index_d$5_CrudConfig as CrudConfig, index_d$5_CrudOperator as CrudOperator, index_d$5_CustomClaims as CustomClaims, index_d$5_CustomFieldOptionsMap as CustomFieldOptionsMap, index_d$5_CustomStoreConfig as CustomStoreConfig, index_d$5_DateValue as DateValue, index_d$5_DeleteEntityRequest as DeleteEntityRequest, index_d$5_DeleteEntityResponse as DeleteEntityResponse, index_d$5_Density as Density, index_d$5_DnDevOverride as DnDevOverride, index_d$5_DndevFrameworkConfig as DndevFrameworkConfig, index_d$5_DndevProviders as DndevProviders, index_d$5_DndevStoreApi as DndevStoreApi, index_d$5_DoNotDevCookieCategories as DoNotDevCookieCategories, index_d$5_DocumentSubscriptionCallback as DocumentSubscriptionCallback, index_d$5_DynamicFormRule as DynamicFormRule, index_d$5_Editable as Editable, index_d$5_EffectiveConnectionType as EffectiveConnectionType, index_d$5_EmailVerificationHookResult as EmailVerificationHookResult, index_d$5_EmailVerificationStatus as EmailVerificationStatus, index_d$5_Entity as Entity, index_d$5_EntityAccessConfig as EntityAccessConfig, index_d$5_EntityAccessDefaults as EntityAccessDefaults, index_d$5_EntityCardListProps as EntityCardListProps, index_d$5_EntityDisplayRendererProps as EntityDisplayRendererProps, index_d$5_EntityField as EntityField, index_d$5_EntityFormRendererProps as EntityFormRendererProps, index_d$5_EntityHookErrors as EntityHookErrors, index_d$5_EntityListProps as EntityListProps, index_d$5_EntityMetadata as EntityMetadata, index_d$5_EntityOwnershipConfig as EntityOwnershipConfig, index_d$5_EntityOwnershipPublicCondition as EntityOwnershipPublicCondition, index_d$5_EntityRecommendationsProps as EntityRecommendationsProps, index_d$5_EntityRecord as EntityRecord, index_d$5_EntityTemplateProps as EntityTemplateProps, index_d$5_EntityTranslations as EntityTranslations, index_d$5_EnvironmentMode as EnvironmentMode, index_d$5_ErrorCode as ErrorCode, index_d$5_ErrorSeverity as ErrorSeverity, index_d$5_ErrorSource as ErrorSource, index_d$5_ExchangeTokenParams as ExchangeTokenParams, index_d$5_ExchangeTokenRequest as ExchangeTokenRequest, index_d$5_FaviconConfig as FaviconConfig, index_d$5_Feature as Feature, index_d$5_FeatureAccessHookResult as FeatureAccessHookResult, index_d$5_FeatureConsentRequirement as FeatureConsentRequirement, index_d$5_FeatureHookResult as FeatureHookResult, index_d$5_FeatureId as FeatureId, index_d$5_FeatureName as FeatureName, index_d$5_FeatureStatus as FeatureStatus, index_d$5_FeaturesConfig as FeaturesConfig, index_d$5_FeaturesPluginConfig as FeaturesPluginConfig, index_d$5_FeaturesRequiringAnyConsent as FeaturesRequiringAnyConsent, index_d$5_FeaturesRequiringConsent as FeaturesRequiringConsent, index_d$5_FeaturesWithoutConsent as FeaturesWithoutConsent, index_d$5_FieldCondition as FieldCondition, index_d$5_FieldType as FieldType, index_d$5_FieldTypeToValue as FieldTypeToValue, index_d$5_FileAsset as FileAsset, index_d$5_FirebaseCallOptions as FirebaseCallOptions, index_d$5_FirebaseConfig as FirebaseConfig, index_d$5_FirestoreTimestamp as FirestoreTimestamp, index_d$5_FirestoreUniqueConstraintValidator as FirestoreUniqueConstraintValidator, index_d$5_FooterConfig as FooterConfig, index_d$5_FooterZoneConfig as FooterZoneConfig, index_d$5_FormConfig as FormConfig, index_d$5_FormStep as FormStep, index_d$5_FunctionCallConfig as FunctionCallConfig, index_d$5_FunctionCallContext as FunctionCallContext, index_d$5_FunctionCallOptions as FunctionCallOptions, index_d$5_FunctionCallResult as FunctionCallResult, index_d$5_FunctionClient as FunctionClient, index_d$5_FunctionClientFactoryOptions as FunctionClientFactoryOptions, index_d$5_FunctionDefaults as FunctionDefaults, index_d$5_FunctionEndpoint as FunctionEndpoint, index_d$5_FunctionError as FunctionError, index_d$5_FunctionLoader as FunctionLoader, index_d$5_FunctionMemory as FunctionMemory, index_d$5_FunctionMeta as FunctionMeta, index_d$5_FunctionPlatform as FunctionPlatform, index_d$5_FunctionResponse as FunctionResponse, index_d$5_FunctionSchema as FunctionSchema, index_d$5_FunctionSchemas as FunctionSchemas, index_d$5_FunctionSystem as FunctionSystem, index_d$5_FunctionTrigger as FunctionTrigger, index_d$5_FunctionsConfig as FunctionsConfig, index_d$5_GetCustomClaimsResponse as GetCustomClaimsResponse, index_d$5_GetEntityData as GetEntityData, index_d$5_GetEntityRequest as GetEntityRequest, index_d$5_GetEntityResponse as GetEntityResponse, index_d$5_GetUserAuthStatusResponse as GetUserAuthStatusResponse, index_d$5_GitHubPermission as GitHubPermission, index_d$5_GitHubRepoConfig as GitHubRepoConfig, index_d$5_GrantGitHubAccessRequest as GrantGitHubAccessRequest, index_d$5_GroupByDefinition as GroupByDefinition, index_d$5_HeaderZoneConfig as HeaderZoneConfig, index_d$5_I18nConfig as I18nConfig, index_d$5_I18nPluginConfig as I18nPluginConfig, index_d$5_I18nProviderProps as I18nProviderProps, index_d$5_ICallableProvider as ICallableProvider, index_d$5_ICrudAdapter as ICrudAdapter, index_d$5_ID as ID, index_d$5_INetworkManager as INetworkManager, index_d$5_IServerAuthAdapter as IServerAuthAdapter, index_d$5_IStorageAdapter as IStorageAdapter, index_d$5_IStorageManager as IStorageManager, index_d$5_IStorageStrategy as IStorageStrategy, index_d$5_Invoice as Invoice, index_d$5_InvoiceItem as InvoiceItem, index_d$5_LanguageInfo as LanguageInfo, index_d$5_LayoutConfig as LayoutConfig, index_d$5_LayoutPreset as LayoutPreset, index_d$5_LegalCompanyInfo as LegalCompanyInfo, index_d$5_LegalConfig as LegalConfig, index_d$5_LegalContactInfo as LegalContactInfo, index_d$5_LegalDirectorInfo as LegalDirectorInfo, index_d$5_LegalHostingInfo as LegalHostingInfo, index_d$5_LegalJurisdictionInfo as LegalJurisdictionInfo, index_d$5_LegalSectionsConfig as LegalSectionsConfig, index_d$5_LegalWebsiteInfo as LegalWebsiteInfo, index_d$5_ListCardLayout as ListCardLayout, index_d$5_ListEntitiesRequest as ListEntitiesRequest, index_d$5_ListEntitiesResponse as ListEntitiesResponse, index_d$5_ListEntityData as ListEntityData, index_d$5_ListOptions as ListOptions, index_d$5_ListResponse as ListResponse, index_d$5_ListSchemaType as ListSchemaType, index_d$5_LoadingActions as LoadingActions, index_d$5_LoadingState as LoadingState, index_d$5_MergedBarConfig as MergedBarConfig, index_d$5_MetricDefinition as MetricDefinition, index_d$5_MobileBehaviorConfig as MobileBehaviorConfig, index_d$5_ModalActions as ModalActions, index_d$5_ModalState as ModalState, index_d$5_MutationResponse as MutationResponse, index_d$5_NavigationRoute as NavigationRoute, index_d$5_NetworkCheckConfig as NetworkCheckConfig, index_d$5_NetworkConnectionType as NetworkConnectionType, index_d$5_NetworkReconnectCallback as NetworkReconnectCallback, NetworkState$1 as NetworkState, index_d$5_NetworkStatus as NetworkStatus, index_d$5_NetworkStatusHookResult as NetworkStatusHookResult, index_d$5_OAuthAPI as OAuthAPI, index_d$5_OAuthApiRequestOptions as OAuthApiRequestOptions, index_d$5_OAuthCallbackHookResult as OAuthCallbackHookResult, index_d$5_OAuthConnection as OAuthConnection, index_d$5_OAuthConnectionInfo as OAuthConnectionInfo, index_d$5_OAuthConnectionRequest as OAuthConnectionRequest, index_d$5_OAuthConnectionStatus as OAuthConnectionStatus, index_d$5_OAuthCredentials as OAuthCredentials, index_d$5_OAuthEventData as OAuthEventData, index_d$5_OAuthEventKey as OAuthEventKey, index_d$5_OAuthEventName as OAuthEventName, index_d$5_OAuthPartner as OAuthPartner, index_d$5_OAuthPartnerButton as OAuthPartnerButton, index_d$5_OAuthPartnerHookResult as OAuthPartnerHookResult, index_d$5_OAuthPartnerId as OAuthPartnerId, index_d$5_OAuthPartnerResult as OAuthPartnerResult, index_d$5_OAuthPartnerState as OAuthPartnerState, index_d$5_OAuthPurpose as OAuthPurpose, index_d$5_OAuthRedirectOperation as OAuthRedirectOperation, index_d$5_OAuthRefreshRequest as OAuthRefreshRequest, index_d$5_OAuthRefreshResponse as OAuthRefreshResponse, index_d$5_OAuthResult as OAuthResult, index_d$5_OAuthStoreActions as OAuthStoreActions, index_d$5_OAuthStoreState as OAuthStoreState, index_d$5_Observable as Observable, index_d$5_OrderByClause as OrderByClause, index_d$5_OrderDirection as OrderDirection, index_d$5_PWAAssetType as PWAAssetType, index_d$5_PWADisplayMode as PWADisplayMode, index_d$5_PWAPluginConfig as PWAPluginConfig, index_d$5_PageAuth as PageAuth, index_d$5_PageMeta as PageMeta, index_d$5_PaginatedQueryResult as PaginatedQueryResult, index_d$5_PaginationOptions as PaginationOptions, index_d$5_PartnerButton as PartnerButton, index_d$5_PartnerConnectionState as PartnerConnectionState, index_d$5_PartnerIconId as PartnerIconId, index_d$5_PartnerId as PartnerId, index_d$5_PartnerResult as PartnerResult, index_d$5_PartnerType as PartnerType, index_d$5_PayloadCacheEventData as PayloadCacheEventData, index_d$5_PayloadDocument as PayloadDocument, index_d$5_PayloadDocumentEventData as PayloadDocumentEventData, index_d$5_PayloadEventKey as PayloadEventKey, index_d$5_PayloadEventName as PayloadEventName, index_d$5_PayloadGlobalEventData as PayloadGlobalEventData, index_d$5_PayloadMediaEventData as PayloadMediaEventData, index_d$5_PayloadPageRegenerationEventData as PayloadPageRegenerationEventData, index_d$5_PayloadRequest as PayloadRequest, index_d$5_PayloadUserEventData as PayloadUserEventData, index_d$5_PaymentEventData as PaymentEventData, index_d$5_PaymentMethod as PaymentMethod, index_d$5_PaymentMethodType as PaymentMethodType, index_d$5_PaymentMode as PaymentMode, index_d$5_Permission as Permission, index_d$5_Picture as Picture, index_d$5_Platform as Platform, index_d$5_PresetConfig as PresetConfig, index_d$5_PresetRegistry as PresetRegistry, index_d$5_ProcessPaymentSuccessRequest as ProcessPaymentSuccessRequest, index_d$5_ProcessPaymentSuccessResponse as ProcessPaymentSuccessResponse, index_d$5_ProductDeclaration as ProductDeclaration, index_d$5_ProviderInstances as ProviderInstances, QueryConfig$1 as QueryConfig, QueryOptions$1 as QueryOptions, index_d$5_QueryOrderBy as QueryOrderBy, index_d$5_QueryWhereClause as QueryWhereClause, index_d$5_RateLimitBackend as RateLimitBackend, index_d$5_RateLimitConfig as RateLimitConfig, index_d$5_RateLimitManager as RateLimitManager, index_d$5_RateLimitResult as RateLimitResult, index_d$5_RateLimitState as RateLimitState, index_d$5_RateLimiter as RateLimiter, index_d$5_ReadCallback as ReadCallback, index_d$5_RedirectOperation as RedirectOperation, index_d$5_RedirectOverlayActions as RedirectOverlayActions, index_d$5_RedirectOverlayConfig as RedirectOverlayConfig, index_d$5_RedirectOverlayPhase as RedirectOverlayPhase, index_d$5_RedirectOverlayState as RedirectOverlayState, index_d$5_Reference as Reference, index_d$5_RefreshSubscriptionRequest as RefreshSubscriptionRequest, index_d$5_RefreshSubscriptionResponse as RefreshSubscriptionResponse, index_d$5_RemoveCustomClaimsResponse as RemoveCustomClaimsResponse, index_d$5_ResolvedLayoutConfig as ResolvedLayoutConfig, index_d$5_RevokeGitHubAccessRequest as RevokeGitHubAccessRequest, index_d$5_RouteMeta as RouteMeta, index_d$5_RouteSource as RouteSource, index_d$5_RoutesPluginConfig as RoutesPluginConfig, index_d$5_SEOConfig as SEOConfig, index_d$5_SchemaMetadata as SchemaMetadata, index_d$5_ScopeConfig as ScopeConfig, index_d$5_SecurityContext as SecurityContext, index_d$5_SecurityEntityConfig as SecurityEntityConfig, index_d$5_ServerRateLimitConfig as ServerRateLimitConfig, index_d$5_ServerRateLimitResult as ServerRateLimitResult, index_d$5_ServerUserRecord as ServerUserRecord, index_d$5_SetCustomClaimsResponse as SetCustomClaimsResponse, index_d$5_SidebarZoneConfig as SidebarZoneConfig, index_d$5_SlotContent as SlotContent, index_d$5_StorageOptions as StorageOptions, index_d$5_StorageScope as StorageScope, index_d$5_StorageType as StorageType, index_d$5_Store as Store, index_d$5_StripeBackConfig as StripeBackConfig, index_d$5_StripeCheckoutRequest as StripeCheckoutRequest, index_d$5_StripeCheckoutResponse as StripeCheckoutResponse, index_d$5_StripeCheckoutSessionEventData as StripeCheckoutSessionEventData, index_d$5_StripeConfig as StripeConfig, index_d$5_StripeCustomer as StripeCustomer, index_d$5_StripeCustomerEventData as StripeCustomerEventData, index_d$5_StripeEventData as StripeEventData, index_d$5_StripeEventKey as StripeEventKey, index_d$5_StripeEventName as StripeEventName, index_d$5_StripeFrontConfig as StripeFrontConfig, index_d$5_StripeInvoice as StripeInvoice, index_d$5_StripeInvoiceEventData as StripeInvoiceEventData, index_d$5_StripePayment as StripePayment, index_d$5_StripePaymentIntentEventData as StripePaymentIntentEventData, index_d$5_StripePaymentMethod as StripePaymentMethod, index_d$5_StripePrice as StripePrice, index_d$5_StripeProduct as StripeProduct, index_d$5_StripeProvider as StripeProvider, index_d$5_StripeSubscription as StripeSubscription, index_d$5_StripeSubscriptionData as StripeSubscriptionData, index_d$5_StripeWebhookEvent as StripeWebhookEvent, index_d$5_StripeWebhookEventData as StripeWebhookEventData, index_d$5_Subscription as Subscription, index_d$5_SubscriptionClaims as SubscriptionClaims, index_d$5_SubscriptionConfig as SubscriptionConfig, index_d$5_SubscriptionData as SubscriptionData, index_d$5_SubscriptionDuration as SubscriptionDuration, index_d$5_SubscriptionEventData as SubscriptionEventData, index_d$5_SubscriptionHookResult as SubscriptionHookResult, index_d$5_SubscriptionInfo as SubscriptionInfo, index_d$5_SubscriptionStatus as SubscriptionStatus, index_d$5_SubscriptionTier as SubscriptionTier, index_d$5_SupportedLanguage as SupportedLanguage, index_d$5_ThemeActions as ThemeActions, index_d$5_ThemeInfo as ThemeInfo, index_d$5_ThemeMode as ThemeMode, index_d$5_ThemeState as ThemeState, index_d$5_ThemesPluginConfig as ThemesPluginConfig, index_d$5_TierAccessHookResult as TierAccessHookResult, index_d$5_Timestamp as Timestamp, index_d$5_TokenInfo as TokenInfo, index_d$5_TokenResponse as TokenResponse, index_d$5_TokenState as TokenState, index_d$5_TokenStatus as TokenStatus, index_d$5_TranslationOptions as TranslationOptions, index_d$5_TranslationResource as TranslationResource, index_d$5_UIFieldOptions as UIFieldOptions, index_d$5_UniqueConstraintValidator as UniqueConstraintValidator, index_d$5_UniqueKeyDefinition as UniqueKeyDefinition, index_d$5_UnsubscribeFn as UnsubscribeFn, index_d$5_UpdateEntityData as UpdateEntityData, index_d$5_UpdateEntityRequest as UpdateEntityRequest, index_d$5_UpdateEntityResponse as UpdateEntityResponse, index_d$5_UploadOptions as UploadOptions, index_d$5_UploadProgressCallback as UploadProgressCallback, index_d$5_UploadResult as UploadResult, index_d$5_UseFunctionsCallResult as UseFunctionsCallResult, index_d$5_UseFunctionsMutationOptions as UseFunctionsMutationOptions, index_d$5_UseFunctionsMutationResult as UseFunctionsMutationResult, index_d$5_UseFunctionsQueryOptions as UseFunctionsQueryOptions, index_d$5_UseFunctionsQueryResult as UseFunctionsQueryResult, index_d$5_UseTranslationOptionsEnhanced as UseTranslationOptionsEnhanced, index_d$5_UserContext as UserContext, index_d$5_UserProfile as UserProfile, index_d$5_UserProviderData as UserProviderData, index_d$5_UserRole as UserRole, index_d$5_UserSubscription as UserSubscription, index_d$5_ValidationRules as ValidationRules, index_d$5_ValueTypeForField as ValueTypeForField, index_d$5_VerifiedToken as VerifiedToken, index_d$5_Visibility as Visibility, index_d$5_WebhookEvent as WebhookEvent, index_d$5_WebhookEventData as WebhookEventData, index_d$5_WhereClause as WhereClause, index_d$5_WhereOperator as WhereOperator, index_d$5_WithMetadata as WithMetadata, index_d$5_dndevSchema as dndevSchema };
|
|
12838
13716
|
}
|
|
12839
13717
|
|
|
12840
13718
|
/**
|
|
@@ -12992,7 +13870,7 @@ declare class TokenManager {
|
|
|
12992
13870
|
* @param authInstance Optional auth instance for automatic refresh
|
|
12993
13871
|
* @param options Configuration options
|
|
12994
13872
|
*/
|
|
12995
|
-
constructor(authInstance?:
|
|
13873
|
+
constructor(authInstance?: unknown, options?: TokenManagerOptions);
|
|
12996
13874
|
/**
|
|
12997
13875
|
* Initialize token management with token information
|
|
12998
13876
|
*
|
|
@@ -15466,8 +16344,8 @@ declare function clearPartnerCache(): void;
|
|
|
15466
16344
|
declare function getPartnerCacheStatus(): {
|
|
15467
16345
|
authPartnersCached: boolean;
|
|
15468
16346
|
oauthPartnersCached: boolean;
|
|
15469
|
-
authPartners: ("apple" | "discord" | "emailLink" | "facebook" | "github" | "google" | "linkedin" | "microsoft" | "
|
|
15470
|
-
oauthPartners: ("discord" | "github" | "google" | "linkedin" | "reddit" | "spotify" | "twitch" | "twitter" | "notion" | "slack" | "
|
|
16347
|
+
authPartners: ("password" | "apple" | "discord" | "emailLink" | "facebook" | "github" | "google" | "linkedin" | "microsoft" | "reddit" | "spotify" | "twitch" | "twitter" | "yahoo")[] | null;
|
|
16348
|
+
oauthPartners: ("medium" | "discord" | "github" | "google" | "linkedin" | "reddit" | "spotify" | "twitch" | "twitter" | "notion" | "slack" | "mastodon" | "youtube")[] | null;
|
|
15471
16349
|
};
|
|
15472
16350
|
/**
|
|
15473
16351
|
* Get AuthPartnerId from Firebase provider ID
|
|
@@ -15483,39 +16361,28 @@ declare function getPartnerCacheStatus(): {
|
|
|
15483
16361
|
declare function getAuthPartnerIdByFirebaseId(firebaseProviderId: string): AuthPartnerId | null;
|
|
15484
16362
|
|
|
15485
16363
|
/**
|
|
15486
|
-
* Generate a secure encryption key
|
|
16364
|
+
* Generate a secure, non-extractable encryption key.
|
|
16365
|
+
*
|
|
16366
|
+
* The key is marked `extractable: false` so the raw key material can never
|
|
16367
|
+
* be exported by JavaScript code, defeating the C-OLD-2 vulnerability.
|
|
16368
|
+
*
|
|
15487
16369
|
* @returns Promise resolving to the generated key
|
|
15488
16370
|
*
|
|
15489
|
-
* @version 0.0.
|
|
16371
|
+
* @version 0.0.2
|
|
15490
16372
|
* @since 0.0.1
|
|
15491
16373
|
* @author AMBROISE PARK Consulting
|
|
15492
16374
|
*/
|
|
15493
16375
|
declare function generateEncryptionKey(): Promise<CryptoKey>;
|
|
15494
16376
|
/**
|
|
15495
|
-
*
|
|
15496
|
-
* @param key CryptoKey to export
|
|
15497
|
-
* @returns Promise resolving to base64-encoded key
|
|
16377
|
+
* Get or create the encryption key.
|
|
15498
16378
|
*
|
|
15499
|
-
*
|
|
15500
|
-
*
|
|
15501
|
-
*
|
|
15502
|
-
*/
|
|
15503
|
-
declare function exportEncryptionKey(key: CryptoKey): Promise<string>;
|
|
15504
|
-
/**
|
|
15505
|
-
* Import an encryption key from a string
|
|
15506
|
-
* @param keyString Base64-encoded key string
|
|
15507
|
-
* @returns Promise resolving to the imported CryptoKey
|
|
16379
|
+
* Keys are stored in IndexedDB as native CryptoKey objects (not exported raw
|
|
16380
|
+
* bytes), so the key material is never written to localStorage or any
|
|
16381
|
+
* JavaScript-accessible string.
|
|
15508
16382
|
*
|
|
15509
|
-
* @version 0.0.1
|
|
15510
|
-
* @since 0.0.1
|
|
15511
|
-
* @author AMBROISE PARK Consulting
|
|
15512
|
-
*/
|
|
15513
|
-
declare function importEncryptionKey(keyString: string): Promise<CryptoKey>;
|
|
15514
|
-
/**
|
|
15515
|
-
* Get or create the encryption key
|
|
15516
16383
|
* @returns Promise resolving to the encryption key
|
|
15517
16384
|
*
|
|
15518
|
-
* @version 0.0.
|
|
16385
|
+
* @version 0.0.2
|
|
15519
16386
|
* @since 0.0.1
|
|
15520
16387
|
* @author AMBROISE PARK Consulting
|
|
15521
16388
|
*/
|
|
@@ -15529,7 +16396,7 @@ declare function getEncryptionKey(): Promise<CryptoKey>;
|
|
|
15529
16396
|
* @since 0.0.1
|
|
15530
16397
|
* @author AMBROISE PARK Consulting
|
|
15531
16398
|
*/
|
|
15532
|
-
declare function encryptData(data:
|
|
16399
|
+
declare function encryptData(data: string | object | number | boolean): Promise<string>;
|
|
15533
16400
|
/**
|
|
15534
16401
|
* Decrypt data using AES-GCM
|
|
15535
16402
|
* @param encryptedData Encrypted string (base64)
|
|
@@ -15539,7 +16406,7 @@ declare function encryptData(data: any): Promise<string>;
|
|
|
15539
16406
|
* @since 0.0.1
|
|
15540
16407
|
* @author AMBROISE PARK Consulting
|
|
15541
16408
|
*/
|
|
15542
|
-
declare function decryptData(encryptedData: string): Promise<
|
|
16409
|
+
declare function decryptData(encryptedData: string): Promise<string | object | number | boolean | null>;
|
|
15543
16410
|
|
|
15544
16411
|
/**
|
|
15545
16412
|
* @fileoverview Storage manager
|
|
@@ -16550,6 +17417,24 @@ declare function isServer(): boolean;
|
|
|
16550
17417
|
* @returns Framework configuration object with platform information
|
|
16551
17418
|
*/
|
|
16552
17419
|
declare function initializePlatformDetection(): DndevFrameworkConfig;
|
|
17420
|
+
/**
|
|
17421
|
+
* Check if running on Expo platform
|
|
17422
|
+
*
|
|
17423
|
+
* @version 0.0.1
|
|
17424
|
+
* @since 0.0.1
|
|
17425
|
+
* @author AMBROISE PARK Consulting
|
|
17426
|
+
* @returns True if running on Expo
|
|
17427
|
+
*/
|
|
17428
|
+
declare function isExpo(): boolean;
|
|
17429
|
+
/**
|
|
17430
|
+
* Check if running on React Native platform
|
|
17431
|
+
*
|
|
17432
|
+
* @version 0.0.1
|
|
17433
|
+
* @since 0.0.1
|
|
17434
|
+
* @author AMBROISE PARK Consulting
|
|
17435
|
+
* @returns True if running on React Native
|
|
17436
|
+
*/
|
|
17437
|
+
declare function isReactNative(): boolean;
|
|
16553
17438
|
/**
|
|
16554
17439
|
* Debug platform detection
|
|
16555
17440
|
* Development helper to log platform detection details
|
|
@@ -17349,6 +18234,131 @@ declare function shouldShowEmailVerification(): boolean;
|
|
|
17349
18234
|
*/
|
|
17350
18235
|
declare function isEmailVerificationRequired(user: any): boolean;
|
|
17351
18236
|
|
|
18237
|
+
/**
|
|
18238
|
+
* @fileoverview Adapter Error Utilities
|
|
18239
|
+
* @description Utility functions for wrapping errors in adapter implementations.
|
|
18240
|
+
* These utilities help maintain consistent error handling across all adapters without
|
|
18241
|
+
* requiring inheritance or base classes.
|
|
18242
|
+
*
|
|
18243
|
+
* @version 0.0.1
|
|
18244
|
+
* @since 0.0.1
|
|
18245
|
+
* @author AMBROISE PARK Consulting
|
|
18246
|
+
*/
|
|
18247
|
+
|
|
18248
|
+
/**
|
|
18249
|
+
* Wraps an error from a CRUD adapter operation.
|
|
18250
|
+
* Maps common database/API errors to DoNotDevError with appropriate codes.
|
|
18251
|
+
*
|
|
18252
|
+
* @param error - The original error from the adapter
|
|
18253
|
+
* @param context - Context about the operation (e.g., "FirestoreAdapter.get", "SupabaseAdapter.add")
|
|
18254
|
+
* @param operation - The operation name (e.g., "get", "add", "query")
|
|
18255
|
+
* @param collection - The collection/table name
|
|
18256
|
+
* @param id - Optional document ID
|
|
18257
|
+
* @returns A DoNotDevError wrapping the original error
|
|
18258
|
+
*
|
|
18259
|
+
* @example
|
|
18260
|
+
* ```typescript
|
|
18261
|
+
* try {
|
|
18262
|
+
* return await this.client.from('users').select().eq('id', id).single();
|
|
18263
|
+
* } catch (error) {
|
|
18264
|
+
* throw wrapCrudError(error, 'SupabaseCrudAdapter.get', 'get', 'users', id);
|
|
18265
|
+
* }
|
|
18266
|
+
* ```
|
|
18267
|
+
*/
|
|
18268
|
+
declare function wrapCrudError(error: unknown, context: string, operation: string, collection: string, id?: string): DoNotDevError;
|
|
18269
|
+
/**
|
|
18270
|
+
* Wraps an error from a storage adapter operation.
|
|
18271
|
+
*
|
|
18272
|
+
* @param error - The original error from the adapter
|
|
18273
|
+
* @param context - Context about the operation (e.g., "FirebaseStorageAdapter.upload")
|
|
18274
|
+
* @param operation - The operation name (e.g., "upload", "delete", "getUrl")
|
|
18275
|
+
* @param path - The storage path or URL
|
|
18276
|
+
* @returns A DoNotDevError wrapping the original error
|
|
18277
|
+
*
|
|
18278
|
+
* @example
|
|
18279
|
+
* ```typescript
|
|
18280
|
+
* try {
|
|
18281
|
+
* return await this.bucket.upload(file, { destination: path });
|
|
18282
|
+
* } catch (error) {
|
|
18283
|
+
* throw wrapStorageError(error, 'S3StorageAdapter.upload', 'upload', path);
|
|
18284
|
+
* }
|
|
18285
|
+
* ```
|
|
18286
|
+
*/
|
|
18287
|
+
declare function wrapStorageError(error: unknown, context: string, operation: string, path: string): DoNotDevError;
|
|
18288
|
+
/**
|
|
18289
|
+
* Wraps an error from an auth adapter operation.
|
|
18290
|
+
*
|
|
18291
|
+
* @param error - The original error from the adapter
|
|
18292
|
+
* @param context - Context about the operation (e.g., "FirebaseAuth.signInWithEmail")
|
|
18293
|
+
* @param operation - The operation name (e.g., "signInWithEmail", "linkWithPartner")
|
|
18294
|
+
* @param details - Optional additional details (e.g., email, partnerId)
|
|
18295
|
+
* @returns A DoNotDevError wrapping the original error
|
|
18296
|
+
*
|
|
18297
|
+
* @example
|
|
18298
|
+
* ```typescript
|
|
18299
|
+
* try {
|
|
18300
|
+
* return await this.sdk.signInWithEmailAndPassword(email, password);
|
|
18301
|
+
* } catch (error) {
|
|
18302
|
+
* throw wrapAuthError(error, 'CustomAuth.signInWithEmail', 'signInWithEmail', { email });
|
|
18303
|
+
* }
|
|
18304
|
+
* ```
|
|
18305
|
+
*/
|
|
18306
|
+
declare function wrapAuthError(error: unknown, context: string, operation: string, details?: Record<string, unknown>): DoNotDevError;
|
|
18307
|
+
|
|
18308
|
+
/**
|
|
18309
|
+
* Validates data against a schema, throwing a DoNotDevError if validation fails.
|
|
18310
|
+
* Use this in adapter methods to ensure data conforms to expected schemas.
|
|
18311
|
+
*
|
|
18312
|
+
* @param schema - The Valibot schema to validate against
|
|
18313
|
+
* @param data - The data to validate
|
|
18314
|
+
* @param context - Context for error messages (e.g., "FirestoreAdapter.add")
|
|
18315
|
+
* @returns The validated and parsed data
|
|
18316
|
+
* @throws DoNotDevError if validation fails
|
|
18317
|
+
*
|
|
18318
|
+
* @example
|
|
18319
|
+
* ```typescript
|
|
18320
|
+
* async add<T>(collection: string, data: T, schema?: dndevSchema<T>): Promise<{ id: string; data: Record<string, unknown> }> {
|
|
18321
|
+
* if (schema) {
|
|
18322
|
+
* data = validateWithSchema(schema, data, 'MyAdapter.add');
|
|
18323
|
+
* }
|
|
18324
|
+
* // ... proceed with validated data
|
|
18325
|
+
* }
|
|
18326
|
+
* ```
|
|
18327
|
+
*/
|
|
18328
|
+
declare function validateWithSchema<T>(schema: dndevSchema<T>, data: unknown, context: string): T;
|
|
18329
|
+
/**
|
|
18330
|
+
* Safely validates data against a schema, returning null if validation fails instead of throwing.
|
|
18331
|
+
* Useful when you want to handle validation errors gracefully.
|
|
18332
|
+
*
|
|
18333
|
+
* @param schema - The Valibot schema to validate against
|
|
18334
|
+
* @param data - The data to validate
|
|
18335
|
+
* @returns The validated data, or null if validation fails
|
|
18336
|
+
*
|
|
18337
|
+
* @example
|
|
18338
|
+
* ```typescript
|
|
18339
|
+
* const validated = safeValidate(schema, rawData);
|
|
18340
|
+
* if (!validated) {
|
|
18341
|
+
* console.warn('Data validation failed, skipping...');
|
|
18342
|
+
* return null;
|
|
18343
|
+
* }
|
|
18344
|
+
* ```
|
|
18345
|
+
*/
|
|
18346
|
+
declare function safeValidate<T>(schema: dndevSchema<T>, data: unknown): T | null;
|
|
18347
|
+
/**
|
|
18348
|
+
* Creates a spreadable object from validated data, ensuring it can be safely spread.
|
|
18349
|
+
* Use this when you need to spread validated data and add additional properties (like `id`).
|
|
18350
|
+
*
|
|
18351
|
+
* @param data - The validated data (should be an object)
|
|
18352
|
+
* @returns A Record that can be safely spread
|
|
18353
|
+
*
|
|
18354
|
+
* @example
|
|
18355
|
+
* ```typescript
|
|
18356
|
+
* const parsed = validateWithSchema(schema, data, 'MyAdapter.get');
|
|
18357
|
+
* return { ...ensureSpreadable(parsed), id } as T;
|
|
18358
|
+
* ```
|
|
18359
|
+
*/
|
|
18360
|
+
declare function ensureSpreadable<T>(data: T): Record<string, unknown>;
|
|
18361
|
+
|
|
17352
18362
|
/**
|
|
17353
18363
|
* @fileoverview Array translation utilities
|
|
17354
18364
|
* @description Provides utilities for handling array translations with indexed keys
|
|
@@ -18194,15 +19204,87 @@ declare function getRoleFromClaims(claims: Record<string, any>): string;
|
|
|
18194
19204
|
* hasTierAccess('premium', 'basic', customConfig) // true
|
|
18195
19205
|
|
|
18196
19206
|
* ```
|
|
18197
|
-
|
|
19207
|
+
|
|
19208
|
+
*
|
|
19209
|
+
|
|
19210
|
+
* @version 0.0.1
|
|
19211
|
+
|
|
19212
|
+
* @since 0.0.1
|
|
19213
|
+
|
|
19214
|
+
*/
|
|
19215
|
+
declare function hasTierAccess(userTier: string | undefined, requiredTier: string, tierConfig?: SubscriptionConfig['tiers']): boolean;
|
|
19216
|
+
|
|
19217
|
+
/**
|
|
19218
|
+
* @fileoverview Provider Registry
|
|
19219
|
+
* @description Central registration point for all pluggable backends (CRUD, auth, storage).
|
|
19220
|
+
* Call `configureProviders()` once at app startup so that `useCrud`, auth, and storage work.
|
|
19221
|
+
* All framework code uses `getProvider()` — no direct backend imports in app code.
|
|
19222
|
+
*
|
|
19223
|
+
* **Required:** Import your `config/providers` module from the root component (e.g. App.tsx)
|
|
19224
|
+
* before any component that uses `useCrud`, auth, or storage.
|
|
19225
|
+
*
|
|
19226
|
+
* @example Firebase (Vite)
|
|
19227
|
+
* ```typescript
|
|
19228
|
+
* // App.tsx
|
|
19229
|
+
* import './config/providers';
|
|
19230
|
+
* // ...
|
|
19231
|
+
* ```
|
|
19232
|
+
* ```typescript
|
|
19233
|
+
* // config/providers.ts
|
|
19234
|
+
* import { configureProviders } from '@donotdev/core';
|
|
19235
|
+
* import { FirestoreAdapter, FirebaseAuth, FirebaseStorageAdapter } from '@donotdev/firebase';
|
|
19236
|
+
* configureProviders({
|
|
19237
|
+
* crud: new FirestoreAdapter(),
|
|
19238
|
+
* auth: new FirebaseAuth(),
|
|
19239
|
+
* storage: new FirebaseStorageAdapter(),
|
|
19240
|
+
* });
|
|
19241
|
+
* ```
|
|
19242
|
+
*
|
|
19243
|
+
* @example Supabase
|
|
19244
|
+
* ```typescript
|
|
19245
|
+
* import { configureProviders } from '@donotdev/core';
|
|
19246
|
+
* import { SupabaseCrudAdapter, SupabaseAuth, SupabaseStorageAdapter } from '@donotdev/supabase';
|
|
19247
|
+
* const supabase = createClient(url, anonKey);
|
|
19248
|
+
* configureProviders({
|
|
19249
|
+
* crud: new SupabaseCrudAdapter(supabase),
|
|
19250
|
+
* auth: new SupabaseAuth(supabase),
|
|
19251
|
+
* storage: new SupabaseStorageAdapter(supabase),
|
|
19252
|
+
* });
|
|
19253
|
+
* ```
|
|
18198
19254
|
*
|
|
18199
|
-
|
|
18200
19255
|
* @version 0.0.1
|
|
19256
|
+
* @since 0.5.0
|
|
19257
|
+
* @author AMBROISE PARK Consulting
|
|
19258
|
+
*/
|
|
18201
19259
|
|
|
18202
|
-
|
|
18203
|
-
|
|
19260
|
+
/**
|
|
19261
|
+
* Configure all providers for the framework.
|
|
19262
|
+
* Must be called once at app startup, before any component uses `useCrud`, auth, or storage.
|
|
19263
|
+
* Typically called from a dedicated module (e.g. `config/providers.ts`) imported by main.tsx.
|
|
19264
|
+
*
|
|
19265
|
+
* @param providers - At least `crud`; optionally `auth`, `storage`, `serverAuth`, `callable`
|
|
19266
|
+
* @throws Does not throw; logs a warning if called more than once (use `resetProviders()` in tests)
|
|
18204
19267
|
*/
|
|
18205
|
-
declare function
|
|
19268
|
+
declare function configureProviders(providers: DndevProviders): void;
|
|
19269
|
+
/**
|
|
19270
|
+
* Get a configured provider by key.
|
|
19271
|
+
*
|
|
19272
|
+
* @param key - The provider key ('crud', 'auth', 'storage', 'serverAuth', 'callable')
|
|
19273
|
+
* @returns The provider instance
|
|
19274
|
+
* @throws If provider not configured
|
|
19275
|
+
*/
|
|
19276
|
+
declare function getProvider<K extends keyof DndevProviders>(key: K): NonNullable<DndevProviders[K]>;
|
|
19277
|
+
/**
|
|
19278
|
+
* Check if a provider is configured.
|
|
19279
|
+
*
|
|
19280
|
+
* @param key - The provider key to check
|
|
19281
|
+
* @returns true if the provider is configured
|
|
19282
|
+
*/
|
|
19283
|
+
declare function hasProvider(key: keyof DndevProviders): boolean;
|
|
19284
|
+
/**
|
|
19285
|
+
* Reset all providers. **Only for testing.**
|
|
19286
|
+
*/
|
|
19287
|
+
declare function resetProviders(): void;
|
|
18206
19288
|
|
|
18207
19289
|
/**
|
|
18208
19290
|
* @fileoverview Singleton utility functions
|
|
@@ -18461,6 +19543,134 @@ type FilterVisibleFieldsOptions = GetVisibleFieldsOptions;
|
|
|
18461
19543
|
*/
|
|
18462
19544
|
declare function filterVisibleFields<T extends Record<string, any>>(data: T | null | undefined, schema: v.BaseSchema<unknown, any, v.BaseIssue<unknown>> | dndevSchema<any>, userRole: UserRole, options?: FilterVisibleFieldsOptions): Partial<T>;
|
|
18463
19545
|
|
|
19546
|
+
/**
|
|
19547
|
+
* @fileoverview Extract flat field names for card queries/schemas.
|
|
19548
|
+
*
|
|
19549
|
+
* @version 0.0.2
|
|
19550
|
+
* @since 0.0.1
|
|
19551
|
+
* @author AMBROISE PARK Consulting
|
|
19552
|
+
*/
|
|
19553
|
+
|
|
19554
|
+
/**
|
|
19555
|
+
* SSOT for card field resolution. Returns a flat, deduplicated field name list.
|
|
19556
|
+
*
|
|
19557
|
+
* Fallback chain: `listCardFields` → `listFields` → all entity field keys.
|
|
19558
|
+
*
|
|
19559
|
+
* - `string[]` → returned as-is
|
|
19560
|
+
* - `ListCardLayout` → all slot arrays merged (deduplicated)
|
|
19561
|
+
* - `undefined` → falls back to `listFields`, then `Object.keys(fields)`
|
|
19562
|
+
*/
|
|
19563
|
+
declare function getListCardFieldNames(entity: {
|
|
19564
|
+
listCardFields?: string[] | ListCardLayout;
|
|
19565
|
+
listFields?: string[];
|
|
19566
|
+
fields?: Record<string, unknown>;
|
|
19567
|
+
}): string[];
|
|
19568
|
+
|
|
19569
|
+
/**
|
|
19570
|
+
* @fileoverview Restricted visibility detection utility
|
|
19571
|
+
* @description Checks if any field in a schema has visibility more restrictive than 'guest'.
|
|
19572
|
+
* Used by CrudService to gate direct adapter access for non-public entities.
|
|
19573
|
+
*
|
|
19574
|
+
* @version 0.0.1
|
|
19575
|
+
* @since 0.0.1
|
|
19576
|
+
* @author AMBROISE PARK Consulting
|
|
19577
|
+
*/
|
|
19578
|
+
|
|
19579
|
+
/**
|
|
19580
|
+
* Returns true if any field in the schema declares a visibility level more
|
|
19581
|
+
* restrictive than 'guest' (i.e. 'user', 'owner', 'admin', 'super', 'technical', 'hidden').
|
|
19582
|
+
* Used by CrudService to gate direct adapter access for non-public entities.
|
|
19583
|
+
*
|
|
19584
|
+
* Handles wrapped schemas (pipe, nullable, optional, union) by traversing the
|
|
19585
|
+
* schema tree to find the underlying object entries. Returns false for schemas
|
|
19586
|
+
* that cannot be introspected (lazy, custom).
|
|
19587
|
+
*
|
|
19588
|
+
* @param schema - A Valibot schema or dndevSchema to inspect
|
|
19589
|
+
* @returns true if any field has restricted visibility
|
|
19590
|
+
*
|
|
19591
|
+
* @example
|
|
19592
|
+
* // Public entity — all fields guest visibility
|
|
19593
|
+
* hasRestrictedVisibility(PublicPostSchema) // false
|
|
19594
|
+
*
|
|
19595
|
+
* @example
|
|
19596
|
+
* // Private entity — email field is 'user' visibility
|
|
19597
|
+
* hasRestrictedVisibility(UserProfileSchema) // true
|
|
19598
|
+
*
|
|
19599
|
+
* @version 0.0.2
|
|
19600
|
+
* @since 0.0.1
|
|
19601
|
+
*/
|
|
19602
|
+
declare function hasRestrictedVisibility(schema: v.BaseSchema<unknown, any, v.BaseIssue<unknown>> | dndevSchema<any>): boolean;
|
|
19603
|
+
|
|
19604
|
+
/**
|
|
19605
|
+
* @fileoverview AuthHardening
|
|
19606
|
+
* @description Brute-force lockout + session timeout enforcement.
|
|
19607
|
+
* Covers SOC2 CC6.1 (authentication), CC6.2 (account lockout).
|
|
19608
|
+
*
|
|
19609
|
+
* @version 0.0.1
|
|
19610
|
+
* @since 0.0.1
|
|
19611
|
+
* @author AMBROISE PARK Consulting
|
|
19612
|
+
*/
|
|
19613
|
+
|
|
19614
|
+
interface LockoutEntry {
|
|
19615
|
+
attempts: number;
|
|
19616
|
+
lastAttempt: number;
|
|
19617
|
+
/** null = not locked; number = locked until this timestamp */
|
|
19618
|
+
lockedUntil: number | null;
|
|
19619
|
+
}
|
|
19620
|
+
interface AuthHardeningConfig {
|
|
19621
|
+
/**
|
|
19622
|
+
* Max consecutive failed sign-in attempts before lockout.
|
|
19623
|
+
* @default 5
|
|
19624
|
+
*/
|
|
19625
|
+
maxAttempts?: number;
|
|
19626
|
+
/**
|
|
19627
|
+
* Lockout duration in milliseconds.
|
|
19628
|
+
* @default 900_000 (15 minutes)
|
|
19629
|
+
*/
|
|
19630
|
+
lockoutMs?: number;
|
|
19631
|
+
/**
|
|
19632
|
+
* Idle session timeout in milliseconds. After this period of inactivity,
|
|
19633
|
+
* the session is considered expired.
|
|
19634
|
+
* @default 28_800_000 (8 hours)
|
|
19635
|
+
*/
|
|
19636
|
+
sessionTimeoutMs?: number;
|
|
19637
|
+
}
|
|
19638
|
+
interface LockoutResult {
|
|
19639
|
+
attempts: number;
|
|
19640
|
+
locked: boolean;
|
|
19641
|
+
lockedUntil: number | null;
|
|
19642
|
+
}
|
|
19643
|
+
declare class AuthHardening implements AuthHardeningContext {
|
|
19644
|
+
private readonly store;
|
|
19645
|
+
private readonly maxAttempts;
|
|
19646
|
+
private readonly lockoutMs;
|
|
19647
|
+
/** Expose for auth adapters to enforce idle session timeout */
|
|
19648
|
+
readonly sessionTimeoutMs: number;
|
|
19649
|
+
constructor(config?: AuthHardeningConfig);
|
|
19650
|
+
/**
|
|
19651
|
+
* Call BEFORE a sign-in attempt.
|
|
19652
|
+
* @throws {Error} if the identifier is currently locked.
|
|
19653
|
+
*/
|
|
19654
|
+
checkLockout(identifier: string): void;
|
|
19655
|
+
/**
|
|
19656
|
+
* Call AFTER a failed sign-in attempt.
|
|
19657
|
+
* @returns current attempt count and whether the account is now locked.
|
|
19658
|
+
*/
|
|
19659
|
+
recordFailure(identifier: string): LockoutResult;
|
|
19660
|
+
private _evictExpired;
|
|
19661
|
+
/**
|
|
19662
|
+
* Call AFTER a successful sign-in — resets the failure counter.
|
|
19663
|
+
*/
|
|
19664
|
+
recordSuccess(identifier: string): void;
|
|
19665
|
+
/**
|
|
19666
|
+
* Check if a session has expired based on last activity timestamp.
|
|
19667
|
+
* @param lastActivityMs - `Date.now()` at last activity
|
|
19668
|
+
*/
|
|
19669
|
+
isSessionExpired(lastActivityMs: number): boolean;
|
|
19670
|
+
/** Current entry for an identifier (for audit logging). */
|
|
19671
|
+
getEntry(identifier: string): LockoutEntry | undefined;
|
|
19672
|
+
}
|
|
19673
|
+
|
|
18464
19674
|
/**
|
|
18465
19675
|
* License validation result
|
|
18466
19676
|
*/
|
|
@@ -18554,6 +19764,9 @@ declare function checkLicense(): LicenseValidationResult;
|
|
|
18554
19764
|
|
|
18555
19765
|
declare const index_d$4_AUTH_COMPUTED_KEYS: typeof AUTH_COMPUTED_KEYS;
|
|
18556
19766
|
declare const index_d$4_AUTH_STORE_KEYS: typeof AUTH_STORE_KEYS;
|
|
19767
|
+
type index_d$4_AuthHardening = AuthHardening;
|
|
19768
|
+
declare const index_d$4_AuthHardening: typeof AuthHardening;
|
|
19769
|
+
type index_d$4_AuthHardeningConfig = AuthHardeningConfig;
|
|
18557
19770
|
declare const index_d$4_BILLING_STORE_KEYS: typeof BILLING_STORE_KEYS;
|
|
18558
19771
|
type index_d$4_BaseStorageStrategy = BaseStorageStrategy;
|
|
18559
19772
|
declare const index_d$4_BaseStorageStrategy: typeof BaseStorageStrategy;
|
|
@@ -18601,6 +19814,7 @@ type index_d$4_IntersectionObserverOptions = IntersectionObserverOptions;
|
|
|
18601
19814
|
type index_d$4_LicenseValidationResult = LicenseValidationResult;
|
|
18602
19815
|
type index_d$4_LocalStorageStrategy = LocalStorageStrategy;
|
|
18603
19816
|
declare const index_d$4_LocalStorageStrategy: typeof LocalStorageStrategy;
|
|
19817
|
+
type index_d$4_LockoutResult = LockoutResult;
|
|
18604
19818
|
declare const index_d$4_OAUTH_STORE_KEYS: typeof OAUTH_STORE_KEYS;
|
|
18605
19819
|
type index_d$4_OS = OS;
|
|
18606
19820
|
type index_d$4_PlatformInfo = PlatformInfo;
|
|
@@ -18630,6 +19844,7 @@ declare const index_d$4_clearLocalStorage: typeof clearLocalStorage;
|
|
|
18630
19844
|
declare const index_d$4_clearPartnerCache: typeof clearPartnerCache;
|
|
18631
19845
|
declare const index_d$4_commonErrorCodeMappings: typeof commonErrorCodeMappings;
|
|
18632
19846
|
declare const index_d$4_compactToISOString: typeof compactToISOString;
|
|
19847
|
+
declare const index_d$4_configureProviders: typeof configureProviders;
|
|
18633
19848
|
declare const index_d$4_cooldown: typeof cooldown;
|
|
18634
19849
|
declare const index_d$4_createAsyncSingleton: typeof createAsyncSingleton;
|
|
18635
19850
|
declare const index_d$4_createErrorHandler: typeof createErrorHandler;
|
|
@@ -18653,7 +19868,7 @@ declare const index_d$4_detectPlatform: typeof detectPlatform;
|
|
|
18653
19868
|
declare const index_d$4_detectPlatformInfo: typeof detectPlatformInfo;
|
|
18654
19869
|
declare const index_d$4_detectStorageError: typeof detectStorageError;
|
|
18655
19870
|
declare const index_d$4_encryptData: typeof encryptData;
|
|
18656
|
-
declare const index_d$
|
|
19871
|
+
declare const index_d$4_ensureSpreadable: typeof ensureSpreadable;
|
|
18657
19872
|
declare const index_d$4_filterVisibleFields: typeof filterVisibleFields;
|
|
18658
19873
|
declare const index_d$4_formatCookieList: typeof formatCookieList;
|
|
18659
19874
|
declare const index_d$4_formatCurrency: typeof formatCurrency;
|
|
@@ -18688,6 +19903,7 @@ declare const index_d$4_getEnabledOAuthPartners: typeof getEnabledOAuthPartners;
|
|
|
18688
19903
|
declare const index_d$4_getEncryptionKey: typeof getEncryptionKey;
|
|
18689
19904
|
declare const index_d$4_getFeatureSummary: typeof getFeatureSummary;
|
|
18690
19905
|
declare const index_d$4_getI18nConfig: typeof getI18nConfig;
|
|
19906
|
+
declare const index_d$4_getListCardFieldNames: typeof getListCardFieldNames;
|
|
18691
19907
|
declare const index_d$4_getLocalStorageItem: typeof getLocalStorageItem;
|
|
18692
19908
|
declare const index_d$4_getNextEnvVar: typeof getNextEnvVar;
|
|
18693
19909
|
declare const index_d$4_getOAuthClientId: typeof getOAuthClientId;
|
|
@@ -18697,6 +19913,7 @@ declare const index_d$4_getOAuthRedirectUrl: typeof getOAuthRedirectUrl;
|
|
|
18697
19913
|
declare const index_d$4_getPartnerCacheStatus: typeof getPartnerCacheStatus;
|
|
18698
19914
|
declare const index_d$4_getPartnerConfig: typeof getPartnerConfig;
|
|
18699
19915
|
declare const index_d$4_getPlatformEnvVar: typeof getPlatformEnvVar;
|
|
19916
|
+
declare const index_d$4_getProvider: typeof getProvider;
|
|
18700
19917
|
declare const index_d$4_getProviderColor: typeof getProviderColor;
|
|
18701
19918
|
declare const index_d$4_getRoleFromClaims: typeof getRoleFromClaims;
|
|
18702
19919
|
declare const index_d$4_getRoutesConfig: typeof getRoutesConfig;
|
|
@@ -18714,9 +19931,10 @@ declare const index_d$4_getWeekFromISOString: typeof getWeekFromISOString;
|
|
|
18714
19931
|
declare const index_d$4_globalEmitter: typeof globalEmitter;
|
|
18715
19932
|
declare const index_d$4_handleError: typeof handleError;
|
|
18716
19933
|
declare const index_d$4_hasOptionalCookies: typeof hasOptionalCookies;
|
|
19934
|
+
declare const index_d$4_hasProvider: typeof hasProvider;
|
|
19935
|
+
declare const index_d$4_hasRestrictedVisibility: typeof hasRestrictedVisibility;
|
|
18717
19936
|
declare const index_d$4_hasRoleAccess: typeof hasRoleAccess;
|
|
18718
19937
|
declare const index_d$4_hasTierAccess: typeof hasTierAccess;
|
|
18719
|
-
declare const index_d$4_importEncryptionKey: typeof importEncryptionKey;
|
|
18720
19938
|
declare const index_d$4_initSentry: typeof initSentry;
|
|
18721
19939
|
declare const index_d$4_initializeConfig: typeof initializeConfig;
|
|
18722
19940
|
declare const index_d$4_initializePlatformDetection: typeof initializePlatformDetection;
|
|
@@ -18727,6 +19945,7 @@ declare const index_d$4_isConfigAvailable: typeof isConfigAvailable;
|
|
|
18727
19945
|
declare const index_d$4_isDev: typeof isDev;
|
|
18728
19946
|
declare const index_d$4_isElementInViewport: typeof isElementInViewport;
|
|
18729
19947
|
declare const index_d$4_isEmailVerificationRequired: typeof isEmailVerificationRequired;
|
|
19948
|
+
declare const index_d$4_isExpo: typeof isExpo;
|
|
18730
19949
|
declare const index_d$4_isFeatureAvailable: typeof isFeatureAvailable;
|
|
18731
19950
|
declare const index_d$4_isFieldVisible: typeof isFieldVisible;
|
|
18732
19951
|
declare const index_d$4_isIntersectionObserverSupported: typeof isIntersectionObserverSupported;
|
|
@@ -18735,6 +19954,7 @@ declare const index_d$4_isNextJs: typeof isNextJs;
|
|
|
18735
19954
|
declare const index_d$4_isOAuthPartnerEnabled: typeof isOAuthPartnerEnabled;
|
|
18736
19955
|
declare const index_d$4_isPKCESupported: typeof isPKCESupported;
|
|
18737
19956
|
declare const index_d$4_isPlatform: typeof isPlatform;
|
|
19957
|
+
declare const index_d$4_isReactNative: typeof isReactNative;
|
|
18738
19958
|
declare const index_d$4_isServer: typeof isServer;
|
|
18739
19959
|
declare const index_d$4_isTest: typeof isTest;
|
|
18740
19960
|
declare const index_d$4_isVite: typeof isVite;
|
|
@@ -18749,9 +19969,11 @@ declare const index_d$4_parseDateToNoonUTC: typeof parseDateToNoonUTC;
|
|
|
18749
19969
|
declare const index_d$4_redirectToExternalUrl: typeof redirectToExternalUrl;
|
|
18750
19970
|
declare const index_d$4_redirectToExternalUrlWithErrorHandling: typeof redirectToExternalUrlWithErrorHandling;
|
|
18751
19971
|
declare const index_d$4_removeLocalStorageItem: typeof removeLocalStorageItem;
|
|
19972
|
+
declare const index_d$4_resetProviders: typeof resetProviders;
|
|
18752
19973
|
declare const index_d$4_resolveAppConfig: typeof resolveAppConfig;
|
|
18753
19974
|
declare const index_d$4_safeLocalStorage: typeof safeLocalStorage;
|
|
18754
19975
|
declare const index_d$4_safeSessionStorage: typeof safeSessionStorage;
|
|
19976
|
+
declare const index_d$4_safeValidate: typeof safeValidate;
|
|
18755
19977
|
declare const index_d$4_setCookie: typeof setCookie;
|
|
18756
19978
|
declare const index_d$4_setLocalStorageItem: typeof setLocalStorageItem;
|
|
18757
19979
|
declare const index_d$4_shouldShowEmailVerification: typeof shouldShowEmailVerification;
|
|
@@ -18772,11 +19994,15 @@ declare const index_d$4_useStorageManager: typeof useStorageManager;
|
|
|
18772
19994
|
declare const index_d$4_validateCodeChallenge: typeof validateCodeChallenge;
|
|
18773
19995
|
declare const index_d$4_validateCodeVerifier: typeof validateCodeVerifier;
|
|
18774
19996
|
declare const index_d$4_validateLicenseKey: typeof validateLicenseKey;
|
|
19997
|
+
declare const index_d$4_validateWithSchema: typeof validateWithSchema;
|
|
18775
19998
|
declare const index_d$4_withErrorHandling: typeof withErrorHandling;
|
|
18776
19999
|
declare const index_d$4_withGracefulDegradation: typeof withGracefulDegradation;
|
|
20000
|
+
declare const index_d$4_wrapAuthError: typeof wrapAuthError;
|
|
20001
|
+
declare const index_d$4_wrapCrudError: typeof wrapCrudError;
|
|
20002
|
+
declare const index_d$4_wrapStorageError: typeof wrapStorageError;
|
|
18777
20003
|
declare namespace index_d$4 {
|
|
18778
|
-
export { index_d$4_AUTH_COMPUTED_KEYS as AUTH_COMPUTED_KEYS, index_d$4_AUTH_STORE_KEYS as AUTH_STORE_KEYS, index_d$4_BILLING_STORE_KEYS as BILLING_STORE_KEYS, index_d$4_BaseStorageStrategy as BaseStorageStrategy, index_d$4_CONSENT_LEVELS as CONSENT_LEVELS, index_d$4_CURRENCY_MAP as CURRENCY_MAP, index_d$4_ClaimsCache as ClaimsCache, index_d$4_DEFAULT_ERROR_MESSAGES as DEFAULT_ERROR_MESSAGES, index_d$4_DEGRADED_AUTH_API as DEGRADED_AUTH_API, index_d$4_DEGRADED_BILLING_API as DEGRADED_BILLING_API, index_d$4_DEGRADED_CRUD_API as DEGRADED_CRUD_API, index_d$4_DEGRADED_OAUTH_API as DEGRADED_OAUTH_API, index_d$4_DoNotDevError as DoNotDevError, index_d$4_EventEmitter as EventEmitter, index_d$4_FRAMEWORK_FEATURES as FRAMEWORK_FEATURES, index_d$4_HybridStorageStrategy as HybridStorageStrategy, index_d$4_LocalStorageStrategy as LocalStorageStrategy, index_d$4_OAUTH_STORE_KEYS as OAUTH_STORE_KEYS, index_d$4_SingletonManager as SingletonManager, index_d$4_StorageManager as StorageManager, index_d$4_TokenManager as TokenManager, index_d$4_ViewportHandler as ViewportHandler, index_d$4_areFeaturesAvailable as areFeaturesAvailable, index_d$4_canRedirectExternally as canRedirectExternally, index_d$4_captureError as captureError, index_d$4_captureErrorToSentry as captureErrorToSentry, index_d$4_captureMessage as captureMessage, index_d$4_checkLicense as checkLicense, index_d$4_cleanupSentry as cleanupSentry, index_d$4_clearFeatureCache as clearFeatureCache, index_d$4_clearLocalStorage as clearLocalStorage, index_d$4_clearPartnerCache as clearPartnerCache, index_d$4_commonErrorCodeMappings as commonErrorCodeMappings, index_d$4_compactToISOString as compactToISOString, index_d$4_cooldown as cooldown, index_d$4_createAsyncSingleton as createAsyncSingleton, index_d$4_createErrorHandler as createErrorHandler, index_d$4_createMetadata as createMetadata, index_d$4_createMethodProxy as createMethodProxy, index_d$4_createProvider as createProvider, index_d$4_createProviders as createProviders, index_d$4_createSingleton as createSingleton, index_d$4_createSingletonWithParams as createSingletonWithParams, index_d$4_createViewportHandler as createViewportHandler, index_d$4_debounce as debounce, index_d$4_debugPlatformDetection as debugPlatformDetection, index_d$4_decryptData as decryptData, index_d$4_delay as delay, index_d$4_deleteCookie as deleteCookie, index_d$4_detectBrowser as detectBrowser, index_d$4_detectErrorSource as detectErrorSource, index_d$4_detectFeatures as detectFeatures, index_d$4_detectLicenseKey as detectLicenseKey, index_d$4_detectPlatform as detectPlatform, index_d$4_detectPlatformInfo as detectPlatformInfo, index_d$4_detectStorageError as detectStorageError, index_d$4_encryptData as encryptData, index_d$
|
|
18779
|
-
export type { index_d$4_BrowserEngine as BrowserEngine, index_d$4_BrowserInfo as BrowserInfo, index_d$4_BrowserType as BrowserType, index_d$4_Claims as Claims, index_d$4_ClaimsCacheOptions as ClaimsCacheOptions, index_d$4_ClaimsCacheResult as ClaimsCacheResult, index_d$4_CleanupFunction as CleanupFunction, index_d$4_CompatibilityReport as CompatibilityReport, index_d$4_ConsentLevel as ConsentLevel, index_d$4_CookieInfo as CookieInfo, index_d$4_CurrencyEntry as CurrencyEntry, index_d$4_DateFormatOptions as DateFormatOptions, index_d$4_DateFormatPreset as DateFormatPreset, index_d$4_ErrorHandlerConfig as ErrorHandlerConfig, index_d$4_ErrorHandlerFunction as ErrorHandlerFunction, index_d$4_EventListener as EventListener, index_d$4_FeatureAvailability as FeatureAvailability, index_d$4_FeatureSupport as FeatureSupport, index_d$4_FilterVisibleFieldsOptions as FilterVisibleFieldsOptions, index_d$4_FrameworkFeature as FrameworkFeature, index_d$4_GetVisibleFieldsOptions as GetVisibleFieldsOptions, index_d$4_HandleErrorOptions as HandleErrorOptions, index_d$4_IStorageManager as IStorageManager, index_d$4_IntersectionObserverCallback as IntersectionObserverCallback, index_d$4_IntersectionObserverOptions as IntersectionObserverOptions, index_d$4_LicenseValidationResult as LicenseValidationResult, index_d$4_OS as OS, index_d$4_PlatformInfo as PlatformInfo, index_d$4_StorageError as StorageError, index_d$4_StorageErrorType as StorageErrorType, index_d$4_StorageOptions as StorageOptions, index_d$4_TokenManagerOptions as TokenManagerOptions, index_d$4_ViewportDetectionOptions as ViewportDetectionOptions, index_d$4_ViewportDetectionResult as ViewportDetectionResult };
|
|
20004
|
+
export { index_d$4_AUTH_COMPUTED_KEYS as AUTH_COMPUTED_KEYS, index_d$4_AUTH_STORE_KEYS as AUTH_STORE_KEYS, index_d$4_AuthHardening as AuthHardening, index_d$4_BILLING_STORE_KEYS as BILLING_STORE_KEYS, index_d$4_BaseStorageStrategy as BaseStorageStrategy, index_d$4_CONSENT_LEVELS as CONSENT_LEVELS, index_d$4_CURRENCY_MAP as CURRENCY_MAP, index_d$4_ClaimsCache as ClaimsCache, index_d$4_DEFAULT_ERROR_MESSAGES as DEFAULT_ERROR_MESSAGES, index_d$4_DEGRADED_AUTH_API as DEGRADED_AUTH_API, index_d$4_DEGRADED_BILLING_API as DEGRADED_BILLING_API, index_d$4_DEGRADED_CRUD_API as DEGRADED_CRUD_API, index_d$4_DEGRADED_OAUTH_API as DEGRADED_OAUTH_API, index_d$4_DoNotDevError as DoNotDevError, index_d$4_EventEmitter as EventEmitter, index_d$4_FRAMEWORK_FEATURES as FRAMEWORK_FEATURES, index_d$4_HybridStorageStrategy as HybridStorageStrategy, index_d$4_LocalStorageStrategy as LocalStorageStrategy, index_d$4_OAUTH_STORE_KEYS as OAUTH_STORE_KEYS, index_d$4_SingletonManager as SingletonManager, index_d$4_StorageManager as StorageManager, index_d$4_TokenManager as TokenManager, index_d$4_ViewportHandler as ViewportHandler, index_d$4_areFeaturesAvailable as areFeaturesAvailable, index_d$4_canRedirectExternally as canRedirectExternally, index_d$4_captureError as captureError, index_d$4_captureErrorToSentry as captureErrorToSentry, index_d$4_captureMessage as captureMessage, index_d$4_checkLicense as checkLicense, index_d$4_cleanupSentry as cleanupSentry, index_d$4_clearFeatureCache as clearFeatureCache, index_d$4_clearLocalStorage as clearLocalStorage, index_d$4_clearPartnerCache as clearPartnerCache, index_d$4_commonErrorCodeMappings as commonErrorCodeMappings, index_d$4_compactToISOString as compactToISOString, index_d$4_configureProviders as configureProviders, index_d$4_cooldown as cooldown, index_d$4_createAsyncSingleton as createAsyncSingleton, index_d$4_createErrorHandler as createErrorHandler, index_d$4_createMetadata as createMetadata, index_d$4_createMethodProxy as createMethodProxy, index_d$4_createProvider as createProvider, index_d$4_createProviders as createProviders, index_d$4_createSingleton as createSingleton, index_d$4_createSingletonWithParams as createSingletonWithParams, index_d$4_createViewportHandler as createViewportHandler, index_d$4_debounce as debounce, index_d$4_debugPlatformDetection as debugPlatformDetection, index_d$4_decryptData as decryptData, index_d$4_delay as delay, index_d$4_deleteCookie as deleteCookie, index_d$4_detectBrowser as detectBrowser, index_d$4_detectErrorSource as detectErrorSource, index_d$4_detectFeatures as detectFeatures, index_d$4_detectLicenseKey as detectLicenseKey, index_d$4_detectPlatform as detectPlatform, index_d$4_detectPlatformInfo as detectPlatformInfo, index_d$4_detectStorageError as detectStorageError, index_d$4_encryptData as encryptData, index_d$4_ensureSpreadable as ensureSpreadable, index_d$4_filterVisibleFields as filterVisibleFields, index_d$4_formatCookieList as formatCookieList, index_d$4_formatCurrency as formatCurrency, index_d$4_formatDate as formatDate, index_d$4_formatRelativeTime as formatRelativeTime, index_d$4_generateCodeChallenge as generateCodeChallenge, index_d$4_generateCodeVerifier as generateCodeVerifier, index_d$4_generateCompatibilityReport as generateCompatibilityReport, index_d$4_generateEncryptionKey as generateEncryptionKey, index_d$4_generateFirestoreRuleCondition as generateFirestoreRuleCondition, index_d$4_generatePKCEPair as generatePKCEPair, index_d$4_getActiveCookies as getActiveCookies, index_d$4_getAppShortName as getAppShortName, index_d$4_getAssetsConfig as getAssetsConfig, index_d$4_getAuthDomain as getAuthDomain, index_d$4_getAuthPartnerConfig as getAuthPartnerConfig, index_d$4_getAuthPartnerIdByFirebaseId as getAuthPartnerIdByFirebaseId, index_d$4_getAvailableFeatures as getAvailableFeatures, index_d$4_getBrowserRecommendations as getBrowserRecommendations, index_d$4_getConfigSection as getConfigSection, index_d$4_getConfigSource as getConfigSource, index_d$4_getCookie as getCookie, index_d$4_getCookieExamples as getCookieExamples, index_d$4_getCookiesByCategory as getCookiesByCategory, index_d$4_getCurrencyLocale as getCurrencyLocale, index_d$4_getCurrencySymbol as getCurrencySymbol, index_d$4_getCurrentOrigin as getCurrentOrigin, index_d$4_getCurrentTimestamp as getCurrentTimestamp, index_d$4_getDndevConfig as getDndevConfig, index_d$4_getEnabledAuthPartners as getEnabledAuthPartners, index_d$4_getEnabledOAuthPartners as getEnabledOAuthPartners, index_d$4_getEncryptionKey as getEncryptionKey, index_d$4_getFeatureSummary as getFeatureSummary, index_d$4_getI18nConfig as getI18nConfig, index_d$4_getListCardFieldNames as getListCardFieldNames, index_d$4_getLocalStorageItem as getLocalStorageItem, index_d$4_getNextEnvVar as getNextEnvVar, index_d$4_getOAuthClientId as getOAuthClientId, index_d$4_getOAuthPartnerConfig as getOAuthPartnerConfig, index_d$4_getOAuthRedirectUri as getOAuthRedirectUri, index_d$4_getOAuthRedirectUrl as getOAuthRedirectUrl, index_d$4_getPartnerCacheStatus as getPartnerCacheStatus, index_d$4_getPartnerConfig as getPartnerConfig, index_d$4_getPlatformEnvVar as getPlatformEnvVar, index_d$4_getProvider as getProvider, index_d$4_getProviderColor as getProviderColor, index_d$4_getRoleFromClaims as getRoleFromClaims, index_d$4_getRoutesConfig as getRoutesConfig, index_d$4_getStorageManager as getStorageManager, index_d$4_getThemesConfig as getThemesConfig, index_d$4_getTokenManager as getTokenManager, index_d$4_getValidAuthPartnerConfig as getValidAuthPartnerConfig, index_d$4_getValidAuthPartnerIds as getValidAuthPartnerIds, index_d$4_getValidOAuthPartnerConfig as getValidOAuthPartnerConfig, index_d$4_getValidOAuthPartnerIds as getValidOAuthPartnerIds, index_d$4_getVisibleFields as getVisibleFields, index_d$4_getVisibleItems as getVisibleItems, index_d$4_getViteEnvVar as getViteEnvVar, index_d$4_getWeekFromISOString as getWeekFromISOString, index_d$4_globalEmitter as globalEmitter, index_d$4_handleError as handleError, index_d$4_hasOptionalCookies as hasOptionalCookies, index_d$4_hasProvider as hasProvider, index_d$4_hasRestrictedVisibility as hasRestrictedVisibility, index_d$4_hasRoleAccess as hasRoleAccess, index_d$4_hasTierAccess as hasTierAccess, index_d$4_initSentry as initSentry, index_d$4_initializeConfig as initializeConfig, index_d$4_initializePlatformDetection as initializePlatformDetection, index_d$4_isAuthPartnerEnabled as isAuthPartnerEnabled, index_d$4_isClient as isClient, index_d$4_isCompactDateString as isCompactDateString, index_d$4_isConfigAvailable as isConfigAvailable, index_d$4_isDev as isDev, index_d$4_isElementInViewport as isElementInViewport, index_d$4_isEmailVerificationRequired as isEmailVerificationRequired, index_d$4_isExpo as isExpo, index_d$4_isFeatureAvailable as isFeatureAvailable, index_d$4_isFieldVisible as isFieldVisible, index_d$4_isIntersectionObserverSupported as isIntersectionObserverSupported, index_d$4_isLocalStorageAvailable as isLocalStorageAvailable, index_d$4_isNextJs as isNextJs, index_d$4_isOAuthPartnerEnabled as isOAuthPartnerEnabled, index_d$4_isPKCESupported as isPKCESupported, index_d$4_isPlatform as isPlatform, index_d$4_isReactNative as isReactNative, index_d$4_isServer as isServer, index_d$4_isTest as isTest, index_d$4_isVite as isVite, index_d$4_isoToCompactString as isoToCompactString, index_d$4_lazyImport as lazyImport, index_d$4_mapToDoNotDevError as mapToDoNotDevError, index_d$4_maybeTranslate as maybeTranslate, index_d$4_normalizeToISOString as normalizeToISOString, index_d$4_observeElement as observeElement, index_d$4_parseDate as parseDate, index_d$4_parseDateToNoonUTC as parseDateToNoonUTC, index_d$4_redirectToExternalUrl as redirectToExternalUrl, index_d$4_redirectToExternalUrlWithErrorHandling as redirectToExternalUrlWithErrorHandling, index_d$4_removeLocalStorageItem as removeLocalStorageItem, index_d$4_resetProviders as resetProviders, index_d$4_resolveAppConfig as resolveAppConfig, index_d$4_safeLocalStorage as safeLocalStorage, index_d$4_safeSessionStorage as safeSessionStorage, index_d$4_safeValidate as safeValidate, index_d$4_setCookie as setCookie, index_d$4_setLocalStorageItem as setLocalStorageItem, index_d$4_shouldShowEmailVerification as shouldShowEmailVerification, index_d$4_showNotification as showNotification, index_d$4_supportsFeature as supportsFeature, index_d$4_throttle as throttle, index_d$4_timestampToISOString as timestampToISOString, index_d$4_timingUtils as timingUtils, index_d$4_toDateOnly as toDateOnly, index_d$4_toISOString as toISOString, index_d$4_translateArray as translateArray, index_d$4_translateArrayRange as translateArrayRange, index_d$4_translateArrayWithIndices as translateArrayWithIndices, index_d$4_translateObjectArray as translateObjectArray, index_d$4_updateMetadata as updateMetadata, index_d$4_useSafeContext as useSafeContext, index_d$4_useStorageManager as useStorageManager, index_d$4_validateCodeChallenge as validateCodeChallenge, index_d$4_validateCodeVerifier as validateCodeVerifier, index_d$4_validateLicenseKey as validateLicenseKey, index_d$4_validateWithSchema as validateWithSchema, index_d$4_withErrorHandling as withErrorHandling, index_d$4_withGracefulDegradation as withGracefulDegradation, index_d$4_wrapAuthError as wrapAuthError, index_d$4_wrapCrudError as wrapCrudError, index_d$4_wrapStorageError as wrapStorageError };
|
|
20005
|
+
export type { index_d$4_AuthHardeningConfig as AuthHardeningConfig, index_d$4_BrowserEngine as BrowserEngine, index_d$4_BrowserInfo as BrowserInfo, index_d$4_BrowserType as BrowserType, index_d$4_Claims as Claims, index_d$4_ClaimsCacheOptions as ClaimsCacheOptions, index_d$4_ClaimsCacheResult as ClaimsCacheResult, index_d$4_CleanupFunction as CleanupFunction, index_d$4_CompatibilityReport as CompatibilityReport, index_d$4_ConsentLevel as ConsentLevel, index_d$4_CookieInfo as CookieInfo, index_d$4_CurrencyEntry as CurrencyEntry, index_d$4_DateFormatOptions as DateFormatOptions, index_d$4_DateFormatPreset as DateFormatPreset, index_d$4_ErrorHandlerConfig as ErrorHandlerConfig, index_d$4_ErrorHandlerFunction as ErrorHandlerFunction, index_d$4_EventListener as EventListener, index_d$4_FeatureAvailability as FeatureAvailability, index_d$4_FeatureSupport as FeatureSupport, index_d$4_FilterVisibleFieldsOptions as FilterVisibleFieldsOptions, index_d$4_FrameworkFeature as FrameworkFeature, index_d$4_GetVisibleFieldsOptions as GetVisibleFieldsOptions, index_d$4_HandleErrorOptions as HandleErrorOptions, index_d$4_IStorageManager as IStorageManager, index_d$4_IntersectionObserverCallback as IntersectionObserverCallback, index_d$4_IntersectionObserverOptions as IntersectionObserverOptions, index_d$4_LicenseValidationResult as LicenseValidationResult, index_d$4_LockoutResult as LockoutResult, index_d$4_OS as OS, index_d$4_PlatformInfo as PlatformInfo, index_d$4_StorageError as StorageError, index_d$4_StorageErrorType as StorageErrorType, index_d$4_StorageOptions as StorageOptions, index_d$4_TokenManagerOptions as TokenManagerOptions, index_d$4_ViewportDetectionOptions as ViewportDetectionOptions, index_d$4_ViewportDetectionResult as ViewportDetectionResult };
|
|
18780
20006
|
}
|
|
18781
20007
|
|
|
18782
20008
|
/**
|
|
@@ -18788,7 +20014,7 @@ declare namespace index_d$4 {
|
|
|
18788
20014
|
*/
|
|
18789
20015
|
interface DoNotDevStore extends BaseStoreActions, BaseStoreState {
|
|
18790
20016
|
readonly isReady: boolean;
|
|
18791
|
-
initialize(data?:
|
|
20017
|
+
initialize(data?: Record<string, unknown>): Promise<boolean>;
|
|
18792
20018
|
cleanup?(): void;
|
|
18793
20019
|
}
|
|
18794
20020
|
/**
|
|
@@ -18800,8 +20026,8 @@ interface DoNotDevStore extends BaseStoreActions, BaseStoreState {
|
|
|
18800
20026
|
*/
|
|
18801
20027
|
interface DoNotDevStoreConfig<T> {
|
|
18802
20028
|
name: string;
|
|
18803
|
-
createStore: (set: (partial: Partial<T & DoNotDevStore> | ((state: T & DoNotDevStore) => Partial<T & DoNotDevStore>)) => void, get: () => T & DoNotDevStore, api:
|
|
18804
|
-
initialize?: (data?:
|
|
20029
|
+
createStore: (set: (partial: Partial<T & DoNotDevStore> | ((state: T & DoNotDevStore) => Partial<T & DoNotDevStore>)) => void, get: () => T & DoNotDevStore, api: StoreApi<T & DoNotDevStore>) => T;
|
|
20030
|
+
initialize?: (data?: Record<string, unknown>) => Promise<boolean>;
|
|
18805
20031
|
cleanup?: () => void;
|
|
18806
20032
|
/**
|
|
18807
20033
|
* Optional persist configuration
|
|
@@ -18817,11 +20043,48 @@ interface DoNotDevStoreConfig<T> {
|
|
|
18817
20043
|
/**
|
|
18818
20044
|
* Creates a DoNotDev store with framework conventions
|
|
18819
20045
|
*
|
|
20046
|
+
* ## Usage Rules — READ vs CALL
|
|
20047
|
+
*
|
|
20048
|
+
* **Reading state (reactive):** Use selector hooks — component re-renders when value changes.
|
|
20049
|
+
* ```ts
|
|
20050
|
+
* const user = useAuthStore((s) => s.user); // ✅ Reactive state
|
|
20051
|
+
* const isReady = useFormStore((s) => s.isReady); // ✅ Reactive state
|
|
20052
|
+
* ```
|
|
20053
|
+
*
|
|
20054
|
+
* **Calling actions (imperative):** Use `getState()` — no subscription, stable reference.
|
|
20055
|
+
* ```ts
|
|
20056
|
+
* useEffect(() => {
|
|
20057
|
+
* useFormStore.getState().setIsDirty(formId, true); // ✅ Action via getState
|
|
20058
|
+
* return () => {
|
|
20059
|
+
* useUploadStore.getState().unregisterUpload(id); // ✅ Cleanup via getState
|
|
20060
|
+
* };
|
|
20061
|
+
* }, [formId]);
|
|
20062
|
+
* ```
|
|
20063
|
+
*
|
|
20064
|
+
* **NEVER** select actions via hooks or put them in dependency arrays:
|
|
20065
|
+
* ```ts
|
|
20066
|
+
* const setDirty = useFormStore((s) => s.setIsDirty); // ❌ Creates subscription
|
|
20067
|
+
* useEffect(() => { setDirty(id, true); }, [setDirty]); // ❌ Infinite loop risk
|
|
20068
|
+
*
|
|
20069
|
+
* const store = useUploadStore(); // ❌ Entire store = new ref every update
|
|
20070
|
+
* useEffect(() => { ... }, [store]); // ❌ Infinite loop
|
|
20071
|
+
* ```
|
|
20072
|
+
*
|
|
20073
|
+
* Middleware (devtools, persist) can break action reference stability,
|
|
20074
|
+
* making `getState()` the only safe pattern for imperative store access.
|
|
20075
|
+
*
|
|
20076
|
+
* @remarks
|
|
20077
|
+
* The `Record<string, any>` constraint on `T` is intentional. Using `unknown` instead of `any`
|
|
20078
|
+
* breaks all consumer store definitions because TypeScript's mapped types and index signatures
|
|
20079
|
+
* are incompatible with `unknown` in this position. Specifically, store state types use index
|
|
20080
|
+
* signatures (e.g., `[key: string]: ...`) that require `any` to satisfy the constraint.
|
|
20081
|
+
* This is a known TypeScript limitation — not a code quality issue.
|
|
20082
|
+
*
|
|
18820
20083
|
* @version 0.0.1
|
|
18821
20084
|
* @since 0.0.1
|
|
18822
20085
|
* @author AMBROISE PARK Consulting
|
|
18823
20086
|
*/
|
|
18824
|
-
declare function createDoNotDevStore<T extends Record<string, any>>(config: DoNotDevStoreConfig<T>): UseBoundStore<StoreApi
|
|
20087
|
+
declare function createDoNotDevStore<T extends Record<string, any>>(config: DoNotDevStoreConfig<T>): UseBoundStore<StoreApi<T & DoNotDevStore>>;
|
|
18825
20088
|
/**
|
|
18826
20089
|
* Type guard to check if a store is a DoNotDev store
|
|
18827
20090
|
*
|
|
@@ -18829,7 +20092,7 @@ declare function createDoNotDevStore<T extends Record<string, any>>(config: DoNo
|
|
|
18829
20092
|
* @since 0.0.1
|
|
18830
20093
|
* @author AMBROISE PARK Consulting
|
|
18831
20094
|
*/
|
|
18832
|
-
declare function isDoNotDevStore(store:
|
|
20095
|
+
declare function isDoNotDevStore(store: unknown): store is DoNotDevStore;
|
|
18833
20096
|
/**
|
|
18834
20097
|
* Extract the state type from a DoNotDev store
|
|
18835
20098
|
*
|
|
@@ -18847,6 +20110,7 @@ type DoNotDevStoreState<T> = T extends (...args: any[]) => infer R ? R extends D
|
|
|
18847
20110
|
* @author AMBROISE PARK Consulting
|
|
18848
20111
|
*/
|
|
18849
20112
|
declare function useNetwork(): {
|
|
20113
|
+
reset: () => void;
|
|
18850
20114
|
status: NetworkStatus;
|
|
18851
20115
|
isOnline: boolean;
|
|
18852
20116
|
isReconnected: boolean;
|
|
@@ -18854,7 +20118,6 @@ declare function useNetwork(): {
|
|
|
18854
20118
|
connectionType: NetworkConnectionType;
|
|
18855
20119
|
effectiveType: string | undefined;
|
|
18856
20120
|
lastChecked: Date;
|
|
18857
|
-
reset: () => void;
|
|
18858
20121
|
};
|
|
18859
20122
|
/**
|
|
18860
20123
|
* Selector hook for network status
|
|
@@ -18881,23 +20144,6 @@ declare function useNetworkOnline(): boolean;
|
|
|
18881
20144
|
*/
|
|
18882
20145
|
declare function useNetworkConnectionType(): NetworkConnectionType;
|
|
18883
20146
|
|
|
18884
|
-
/**
|
|
18885
|
-
* @fileoverview Rate limit hook
|
|
18886
|
-
* @description Hook for accessing rate limit functionality
|
|
18887
|
-
* NOTE: Auth-related rate limiting moved to @donotdev/auth package
|
|
18888
|
-
*
|
|
18889
|
-
* @version 0.0.1
|
|
18890
|
-
* @since 0.0.1
|
|
18891
|
-
* @author AMBROISE PARK Consulting
|
|
18892
|
-
*/
|
|
18893
|
-
/**
|
|
18894
|
-
* Generic rate limiting hook (infrastructure-level)
|
|
18895
|
-
* Auth-specific rate limiting now handled in @donotdev/auth
|
|
18896
|
-
*
|
|
18897
|
-
* @version 0.0.1
|
|
18898
|
-
* @since 0.0.1
|
|
18899
|
-
* @author AMBROISE PARK Consulting
|
|
18900
|
-
*/
|
|
18901
20147
|
declare function useRateLimit(): {
|
|
18902
20148
|
checkLimit: () => boolean;
|
|
18903
20149
|
resetLimit: () => void;
|
|
@@ -18963,50 +20209,6 @@ declare const useAbortControllerStore: zustand.UseBoundStore<zustand.StoreApi<Ab
|
|
|
18963
20209
|
* @author AMBROISE PARK Consulting
|
|
18964
20210
|
*/
|
|
18965
20211
|
declare const useConsentStore: zustand.UseBoundStore<zustand.StoreApi<ConsentAPI & DoNotDevStore>>;
|
|
18966
|
-
/**
|
|
18967
|
-
* Hook for accessing consent store
|
|
18968
|
-
*
|
|
18969
|
-
* @version 0.0.1
|
|
18970
|
-
* @since 0.0.1
|
|
18971
|
-
* @author AMBROISE PARK Consulting
|
|
18972
|
-
*/
|
|
18973
|
-
/**
|
|
18974
|
-
* React hook for consent with property-based access
|
|
18975
|
-
*
|
|
18976
|
-
* Single entry point for all consent operations.
|
|
18977
|
-
* Follows the same pattern as useAuth and useStripeBilling.
|
|
18978
|
-
*
|
|
18979
|
-
* **Property-based access:**
|
|
18980
|
-
* ```typescript
|
|
18981
|
-
* // ✅ State from store (reactive, re-renders on change)
|
|
18982
|
-
* const hasConsented = useConsent('hasConsented');
|
|
18983
|
-
* const categories = useConsent('categories');
|
|
18984
|
-
* const showBanner = useConsent('showBanner');
|
|
18985
|
-
*
|
|
18986
|
-
* // ✅ Methods from store (stable, never re-renders)
|
|
18987
|
-
* const acceptAll = useConsent('acceptAll');
|
|
18988
|
-
* const showCookieBanner = useConsent('showCookieBanner');
|
|
18989
|
-
* ```
|
|
18990
|
-
*
|
|
18991
|
-
* @template K - The property key from ConsentAPI
|
|
18992
|
-
* @param key - Property name to access
|
|
18993
|
-
* @returns The value of the specified property
|
|
18994
|
-
*
|
|
18995
|
-
* @example
|
|
18996
|
-
* ```typescript
|
|
18997
|
-
* // Get consent state (re-renders when consent changes)
|
|
18998
|
-
* const hasConsented = useConsent('hasConsented');
|
|
18999
|
-
* if (!hasConsented) return <ConsentBanner />;
|
|
19000
|
-
*
|
|
19001
|
-
* // Get show banner method (stable, never re-renders)
|
|
19002
|
-
* const showBanner = useConsent('showCookieBanner');
|
|
19003
|
-
* <button onClick={showBanner}>Cookie Settings</button>
|
|
19004
|
-
* ```
|
|
19005
|
-
*
|
|
19006
|
-
* @version 0.0.1
|
|
19007
|
-
* @since 0.0.1
|
|
19008
|
-
* @author AMBROISE PARK Consulting
|
|
19009
|
-
*/
|
|
19010
20212
|
declare function useConsent<K extends keyof ConsentAPI>(key: K): ConsentAPI[K];
|
|
19011
20213
|
/**
|
|
19012
20214
|
* Hook to check if consent store is ready
|
|
@@ -19225,7 +20427,7 @@ interface NavigationCache {
|
|
|
19225
20427
|
routes: NavigationRoute[];
|
|
19226
20428
|
}>;
|
|
19227
20429
|
/** Route manifest metadata */
|
|
19228
|
-
manifest:
|
|
20430
|
+
manifest: Record<string, unknown> | null;
|
|
19229
20431
|
/** Last cache update timestamp */
|
|
19230
20432
|
lastUpdated: number;
|
|
19231
20433
|
}
|
|
@@ -19256,7 +20458,7 @@ interface NavigationState {
|
|
|
19256
20458
|
routes: NavigationRoute[];
|
|
19257
20459
|
}>;
|
|
19258
20460
|
/** Get route manifest metadata */
|
|
19259
|
-
getManifest: () =>
|
|
20461
|
+
getManifest: () => Record<string, unknown> | null;
|
|
19260
20462
|
/** Toggle favorite status for a route */
|
|
19261
20463
|
toggleFavorite: (path: string) => void;
|
|
19262
20464
|
/** Check if a route is favorited */
|
|
@@ -19554,7 +20756,7 @@ interface BreakpointActions {
|
|
|
19554
20756
|
*/
|
|
19555
20757
|
interface LayoutActions {
|
|
19556
20758
|
/** Initialize layout with preset and app config */
|
|
19557
|
-
initializeLayout: (preset: LayoutPreset, app?:
|
|
20759
|
+
initializeLayout: (preset: LayoutPreset, app?: AppMetadata) => Promise<void>;
|
|
19558
20760
|
/** Set the selected layout preset (validates input, keeps current if invalid) */
|
|
19559
20761
|
setLayoutPreset: (preset: string | LayoutPreset) => void;
|
|
19560
20762
|
/** Set layout loading state */
|
|
@@ -19764,65 +20966,6 @@ declare namespace index_d$3 {
|
|
|
19764
20966
|
export type { index_d$3_BreakpointAPI as BreakpointAPI, index_d$3_DoNotDevStore as DoNotDevStore, index_d$3_DoNotDevStoreConfig as DoNotDevStoreConfig, index_d$3_DoNotDevStoreState as DoNotDevStoreState, index_d$3_LayoutAPI as LayoutAPI, index_d$3_OverlayAPI as OverlayAPI, index_d$3_RouteData as RouteData, index_d$3_RouteManifest as RouteManifest, index_d$3_ThemeAPI as ThemeAPI };
|
|
19765
20967
|
}
|
|
19766
20968
|
|
|
19767
|
-
/**
|
|
19768
|
-
* @fileoverview Unified Schema Generation
|
|
19769
|
-
* @description Creates Valibot schemas from entity definitions with visibility metadata.
|
|
19770
|
-
*
|
|
19771
|
-
* Entity → Schema (with visibility) → Used everywhere (frontend + backend)
|
|
19772
|
-
*
|
|
19773
|
-
* Isomorphic code (works in both client and server environments).
|
|
19774
|
-
*
|
|
19775
|
-
* @version 0.0.2
|
|
19776
|
-
* @since 0.0.1
|
|
19777
|
-
* @author AMBROISE PARK Consulting
|
|
19778
|
-
*/
|
|
19779
|
-
|
|
19780
|
-
/**
|
|
19781
|
-
* Valibot schema with visibility metadata attached
|
|
19782
|
-
*/
|
|
19783
|
-
interface SchemaWithVisibility extends v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>> {
|
|
19784
|
-
visibility?: Visibility;
|
|
19785
|
-
}
|
|
19786
|
-
/**
|
|
19787
|
-
* Operation-specific schemas generated from entity
|
|
19788
|
-
*/
|
|
19789
|
-
interface OperationSchemas {
|
|
19790
|
-
/** Create: excludes technical fields, enforces required */
|
|
19791
|
-
create: dndevSchema<unknown>;
|
|
19792
|
-
/** Draft: excludes technical fields, all optional except status='draft' */
|
|
19793
|
-
draft: dndevSchema<unknown>;
|
|
19794
|
-
/** Update: excludes technical fields, all optional */
|
|
19795
|
-
update: dndevSchema<unknown>;
|
|
19796
|
-
/** Get: includes all fields with visibility metadata */
|
|
19797
|
-
get: dndevSchema<unknown>;
|
|
19798
|
-
/** List: optimized for admin table (uses listFields) */
|
|
19799
|
-
list: dndevSchema<unknown>;
|
|
19800
|
-
/** ListCard: optimized for public cards (uses listCardFields, falls back to listFields) */
|
|
19801
|
-
listCard: dndevSchema<unknown>;
|
|
19802
|
-
/** Delete: just { id: string } */
|
|
19803
|
-
delete: dndevSchema<unknown>;
|
|
19804
|
-
}
|
|
19805
|
-
/**
|
|
19806
|
-
* Creates all operation-specific schemas from an entity definition
|
|
19807
|
-
*
|
|
19808
|
-
* Each schema field has `.visibility` attached for backend filtering.
|
|
19809
|
-
*
|
|
19810
|
-
* @param entity - Entity definition
|
|
19811
|
-
* @returns Operation-specific schemas with visibility metadata
|
|
19812
|
-
*
|
|
19813
|
-
* @example
|
|
19814
|
-
* ```typescript
|
|
19815
|
-
* const schemas = createSchemas(carEntity);
|
|
19816
|
-
* // schemas.create - for creating documents
|
|
19817
|
-
* // schemas.draft - for saving incomplete
|
|
19818
|
-
* // schemas.update - for partial updates
|
|
19819
|
-
* // schemas.get - for reading (includes technical fields)
|
|
19820
|
-
* // schemas.list - array of get
|
|
19821
|
-
* // schemas.delete - just { id }
|
|
19822
|
-
* ```
|
|
19823
|
-
*/
|
|
19824
|
-
declare function createSchemas(entity: Entity): OperationSchemas;
|
|
19825
|
-
|
|
19826
20969
|
/**
|
|
19827
20970
|
* @fileoverview Schema enhancement utility
|
|
19828
20971
|
* @description Enhances a Valibot schema with additional metadata
|
|
@@ -19923,7 +21066,7 @@ declare function getSchemaType(field: EntityField<FieldType>): v.BaseSchema<unkn
|
|
|
19923
21066
|
* @since 0.0.1
|
|
19924
21067
|
* @author AMBROISE PARK Consulting
|
|
19925
21068
|
*/
|
|
19926
|
-
declare function validateDates(data: Record<string,
|
|
21069
|
+
declare function validateDates(data: Record<string, unknown> | unknown[], currentPath?: string): void;
|
|
19927
21070
|
|
|
19928
21071
|
/**
|
|
19929
21072
|
* Validates a document against the schema, including uniqueness and custom validations.
|
|
@@ -19937,7 +21080,7 @@ declare function validateDates(data: Record<string, any> | any[], currentPath?:
|
|
|
19937
21080
|
* @since 0.0.1
|
|
19938
21081
|
* @author AMBROISE PARK Consulting
|
|
19939
21082
|
*/
|
|
19940
|
-
declare function validateDocument<T>(schema: dndevSchema<T>, data: Record<string,
|
|
21083
|
+
declare function validateDocument<T>(schema: dndevSchema<T>, data: Record<string, unknown>, operation: 'create' | 'update', currentDocId?: string): Promise<void>;
|
|
19941
21084
|
|
|
19942
21085
|
/**
|
|
19943
21086
|
* @fileoverview Unique field validation utility
|
|
@@ -19968,7 +21111,7 @@ declare function registerUniqueConstraintValidator(validator: UniqueConstraintVa
|
|
|
19968
21111
|
* @since 0.0.1
|
|
19969
21112
|
* @author AMBROISE PARK Consulting
|
|
19970
21113
|
*/
|
|
19971
|
-
declare function validateUniqueFields<T>(schema: dndevSchema<T>, data: Record<string,
|
|
21114
|
+
declare function validateUniqueFields<T>(schema: dndevSchema<T>, data: Record<string, unknown>, currentDocId?: string): Promise<void>;
|
|
19972
21115
|
|
|
19973
21116
|
/**
|
|
19974
21117
|
* @fileoverview Schema Utilities
|
|
@@ -20258,6 +21401,65 @@ declare const baseFields: TypedBaseFields;
|
|
|
20258
21401
|
*/
|
|
20259
21402
|
declare function defineEntity(entity: BusinessEntity): Entity;
|
|
20260
21403
|
|
|
21404
|
+
/**
|
|
21405
|
+
* @fileoverview Unified Schema Generation
|
|
21406
|
+
* @description Creates Valibot schemas from entity definitions with visibility metadata.
|
|
21407
|
+
*
|
|
21408
|
+
* Entity → Schema (with visibility) → Used everywhere (frontend + backend)
|
|
21409
|
+
*
|
|
21410
|
+
* Isomorphic code (works in both client and server environments).
|
|
21411
|
+
*
|
|
21412
|
+
* @version 0.0.2
|
|
21413
|
+
* @since 0.0.1
|
|
21414
|
+
* @author AMBROISE PARK Consulting
|
|
21415
|
+
*/
|
|
21416
|
+
|
|
21417
|
+
/**
|
|
21418
|
+
* Valibot schema with visibility metadata attached
|
|
21419
|
+
*/
|
|
21420
|
+
interface SchemaWithVisibility extends v.BaseSchema<unknown, unknown, v.BaseIssue<unknown>> {
|
|
21421
|
+
visibility?: Visibility;
|
|
21422
|
+
}
|
|
21423
|
+
/**
|
|
21424
|
+
* Operation-specific schemas generated from entity
|
|
21425
|
+
*/
|
|
21426
|
+
interface OperationSchemas {
|
|
21427
|
+
/** Create: excludes technical fields, enforces required */
|
|
21428
|
+
create: dndevSchema<unknown>;
|
|
21429
|
+
/** Draft: excludes technical fields, all optional except status='draft' */
|
|
21430
|
+
draft: dndevSchema<unknown>;
|
|
21431
|
+
/** Update: excludes technical fields, all optional */
|
|
21432
|
+
update: dndevSchema<unknown>;
|
|
21433
|
+
/** Get: includes all fields with visibility metadata */
|
|
21434
|
+
get: dndevSchema<unknown>;
|
|
21435
|
+
/** List: optimized for admin table (uses listFields) */
|
|
21436
|
+
list: dndevSchema<unknown>;
|
|
21437
|
+
/** ListCard: optimized for public cards (uses listCardFields, falls back to listFields) */
|
|
21438
|
+
listCard: dndevSchema<unknown>;
|
|
21439
|
+
/** Delete: just { id: string } */
|
|
21440
|
+
delete: dndevSchema<unknown>;
|
|
21441
|
+
}
|
|
21442
|
+
/**
|
|
21443
|
+
* Creates all operation-specific schemas from an entity definition
|
|
21444
|
+
*
|
|
21445
|
+
* Each schema field has `.visibility` attached for backend filtering.
|
|
21446
|
+
*
|
|
21447
|
+
* @param entity - Entity definition
|
|
21448
|
+
* @returns Operation-specific schemas with visibility metadata
|
|
21449
|
+
*
|
|
21450
|
+
* @example
|
|
21451
|
+
* ```typescript
|
|
21452
|
+
* const schemas = createSchemas(carEntity);
|
|
21453
|
+
* // schemas.create - for creating documents
|
|
21454
|
+
* // schemas.draft - for saving incomplete
|
|
21455
|
+
* // schemas.update - for partial updates
|
|
21456
|
+
* // schemas.get - for reading (includes technical fields)
|
|
21457
|
+
* // schemas.list - array of get
|
|
21458
|
+
* // schemas.delete - just { id }
|
|
21459
|
+
* ```
|
|
21460
|
+
*/
|
|
21461
|
+
declare function createSchemas(entity: Entity): OperationSchemas;
|
|
21462
|
+
|
|
20261
21463
|
/**
|
|
20262
21464
|
* @fileoverview Option generation helpers for select fields
|
|
20263
21465
|
* @description Simple utilities to generate options arrays for select/dropdown fields.
|
|
@@ -23019,13 +24221,12 @@ interface UseBreathingTimerProps {
|
|
|
23019
24221
|
* @author AMBROISE PARK Consulting
|
|
23020
24222
|
*/
|
|
23021
24223
|
declare function useBreathingTimer({ duration, onComplete, }: UseBreathingTimerProps): {
|
|
23022
|
-
status: "
|
|
24224
|
+
status: "paused" | "active" | "idle" | "complete";
|
|
23023
24225
|
timeRemaining: number;
|
|
23024
24226
|
start: () => void;
|
|
23025
24227
|
togglePause: () => void;
|
|
23026
24228
|
restart: () => void;
|
|
23027
24229
|
formatTime: (seconds: number) => string;
|
|
23028
|
-
onComplete: (() => void) | undefined;
|
|
23029
24230
|
};
|
|
23030
24231
|
|
|
23031
24232
|
/**
|
|
@@ -23219,7 +24420,6 @@ declare const index_d$1_QueryClientProvider: typeof QueryClientProvider;
|
|
|
23219
24420
|
type index_d$1_QueryClientProviderProps = QueryClientProviderProps;
|
|
23220
24421
|
type index_d$1_QueryFunction<T = unknown, TQueryKey extends QueryKey = QueryKey, TPageParam = never> = QueryFunction<T, TQueryKey, TPageParam>;
|
|
23221
24422
|
type index_d$1_QueryKey = QueryKey;
|
|
23222
|
-
type index_d$1_QueryOptions<TQueryFnData = unknown, TError = DefaultError, TData = TQueryFnData, TQueryKey extends QueryKey = QueryKey, TPageParam = never> = QueryOptions<TQueryFnData, TError, TData, TQueryKey, TPageParam>;
|
|
23223
24423
|
declare const index_d$1_QueryProviders: typeof QueryProviders;
|
|
23224
24424
|
type index_d$1_UseClickOutsideOptions = UseClickOutsideOptions;
|
|
23225
24425
|
type index_d$1_UseClickOutsideReturn = UseClickOutsideReturn;
|
|
@@ -23261,7 +24461,7 @@ declare const index_d$1_useSeoConfig: typeof useSeoConfig;
|
|
|
23261
24461
|
declare const index_d$1_useViewportVisibility: typeof useViewportVisibility;
|
|
23262
24462
|
declare namespace index_d$1 {
|
|
23263
24463
|
export { index_d$1_AppConfigContext as AppConfigContext, index_d$1_AppConfigProvider as AppConfigProvider, index_d$1_QueryClient as QueryClient, index_d$1_QueryClientProvider as QueryClientProvider, index_d$1_QueryProviders as QueryProviders, index_d$1_getQueryClient as getQueryClient, index_d$1_queryClient as queryClient, index_d$1_useAppConfig as useAppConfig, index_d$1_useAuthConfig as useAuthConfig, index_d$1_useBreathingTimer as useBreathingTimer, index_d$1_useClickOutside as useClickOutside, index_d$1_useDebounce as useDebounce, index_d$1_useEventListener as useEventListener, index_d$1_useFaviconConfig as useFaviconConfig, index_d$1_useFeaturesConfig as useFeaturesConfig, index_d$1_useIntersectionObserver as useIntersectionObserver, index_d$1_useIsClient as useIsClient, index_d$1_useLocalStorage as useLocalStorage, index_d$1_useMutation as useMutation, index_d$1_useQuery as useQuery, index_d$1_useQueryClient as useQueryClient, index_d$1_useScriptLoader as useScriptLoader, index_d$1_useSeoConfig as useSeoConfig, index_d$1_useViewportVisibility as useViewportVisibility };
|
|
23264
|
-
export type { index_d$1_AppConfigProviderProps as AppConfigProviderProps, index_d$1_MutationOptions as MutationOptions, index_d$1_QueryClientProviderProps as QueryClientProviderProps, index_d$1_QueryFunction as QueryFunction, index_d$1_QueryKey as QueryKey, index_d$
|
|
24464
|
+
export type { index_d$1_AppConfigProviderProps as AppConfigProviderProps, index_d$1_MutationOptions as MutationOptions, index_d$1_QueryClientProviderProps as QueryClientProviderProps, index_d$1_QueryFunction as QueryFunction, index_d$1_QueryKey as QueryKey, index_d$1_UseClickOutsideOptions as UseClickOutsideOptions, index_d$1_UseClickOutsideReturn as UseClickOutsideReturn, index_d$1_UseDebounceOptions as UseDebounceOptions, index_d$1_UseEventListenerOptions as UseEventListenerOptions, index_d$1_UseEventListenerReturn as UseEventListenerReturn, index_d$1_UseIntersectionObserverOptions as UseIntersectionObserverOptions, index_d$1_UseIntersectionObserverReturn as UseIntersectionObserverReturn, index_d$1_UseLocalStorageOptions as UseLocalStorageOptions, index_d$1_UseLocalStorageReturn as UseLocalStorageReturn, index_d$1_UseMutationOptions as UseMutationOptions, index_d$1_UseMutationOptionsWithErrorHandling as UseMutationOptionsWithErrorHandling, index_d$1_UseMutationResult as UseMutationResult, index_d$1_UseQueryOptions as UseQueryOptions, index_d$1_UseQueryOptionsWithErrorHandling as UseQueryOptionsWithErrorHandling, index_d$1_UseQueryResult as UseQueryResult, index_d$1_UseScriptLoaderOptions as UseScriptLoaderOptions, index_d$1_UseScriptLoaderReturn as UseScriptLoaderReturn, index_d$1_UseViewportVisibilityOptions as UseViewportVisibilityOptions, index_d$1_UseViewportVisibilityReturn as UseViewportVisibilityReturn };
|
|
23265
24465
|
}
|
|
23266
24466
|
|
|
23267
24467
|
/**
|
|
@@ -23947,5 +25147,5 @@ declare namespace index_d {
|
|
|
23947
25147
|
export type { index_d_CountryData as CountryData, index_d_DoNotDevTransProps as DoNotDevTransProps, index_d_FAQSectionProps as FAQSectionProps, index_d_LanguageData as LanguageData, index_d_TransTag as TransTag };
|
|
23948
25148
|
}
|
|
23949
25149
|
|
|
23950
|
-
export { AUTH_COMPUTED_KEYS, AUTH_EVENTS, AUTH_PARTNERS, AUTH_PARTNER_STATE, AUTH_STORE_KEYS, AppConfigContext, AppConfigProvider, AuthUserSchema, BACKEND_GENERATED_FIELD_NAMES, BILLING_EVENTS, BILLING_STORE_KEYS, BREAKPOINT_RANGES, BREAKPOINT_THRESHOLDS, BaseStorageStrategy, COMMON_TIER_CONFIGS, CONFIDENCE_LEVELS, CONSENT_CATEGORY, CONSENT_LEVELS, CONTEXTS, COUNTRIES, CURRENCY_MAP, CheckoutSessionMetadataSchema, ClaimsCache, CreateCheckoutSessionRequestSchema, CreateCheckoutSessionResponseSchema, CustomClaimsSchema, DEFAULT_ENTITY_ACCESS, DEFAULT_ERROR_MESSAGES, DEFAULT_LAYOUT_PRESET, DEFAULT_STATUS_OPTIONS, DEFAULT_STATUS_VALUE, DEFAULT_SUBSCRIPTION, DEGRADED_AUTH_API, DEGRADED_BILLING_API, DEGRADED_CRUD_API, DEGRADED_OAUTH_API, DENSITY, DoNotDevError, ENVIRONMENTS, EntityHookError, EventEmitter, FAQSection, FEATURES, FEATURE_CONSENT_MATRIX, FEATURE_STATUS, FIREBASE_ERROR_MAP, FIRESTORE_ID_PATTERN, FRAMEWORK_FEATURES, Flag, GITHUB_PERMISSION_LEVELS, HIDDEN_STATUSES, index_d$1 as Hooks, HybridStorageStrategy, index_d as I18n, LANGUAGES, LAYOUT_PRESET, LanguageFAB, LanguageSelector, LanguageToggleGroup, LocalStorageStrategy, OAUTH_EVENTS, OAUTH_PARTNERS, OAUTH_STORE_KEYS, PARTNER_ICONS, PAYLOAD_EVENTS, PERMISSIONS, PLATFORMS, PWA_ASSET_TYPES, PWA_DISPLAY_MODES, ProductDeclarationSchema, ProductDeclarationsSchema, QueryClient, QueryClientProvider, QueryProviders, ROUTE_SOURCES, STORAGE_SCOPES, STORAGE_TYPES, STRIPE_EVENTS, STRIPE_MODES, SUBSCRIPTION_DURATIONS, SUBSCRIPTION_STATUS, SUBSCRIPTION_TIERS, index_d$2 as Schemas, SingletonManager, StorageManager, index_d$3 as Stores, StripeBackConfigSchema, StripeFrontConfigSchema, StripePaymentSchema, StripeSubscriptionSchema, SubscriptionClaimsSchema, SubscriptionDataSchema, TECHNICAL_FIELD_NAMES, TRANS_TAGS, TokenManager, Trans, TranslatedText, index_d$5 as Types, USER_ROLES, UserSubscriptionSchema, index_d$4 as Utils, ViewportHandler, WebhookEventSchema, addressSchema, applyTheme, areFeaturesAvailable, arraySchema, baseFields, booleanSchema, buildRoutePath, canRedirectExternally, captureError, captureErrorToSentry, captureMessage, checkGitHubAccessSchema, checkLicense, cleanupSentry, clearFeatureCache, clearLocalStorage, clearPartnerCache, clearSchemaGenerators, clearScopeProviders, commonErrorCodeMappings, compactToISOString, cooldown, createAsyncSingleton, createDefaultSubscriptionClaims, createDefaultUserProfile, createDoNotDevStore, createEntitySchema, createErrorHandler, createMetadata, createMethodProxy, createProvider, createProviders, createSchemas, createSingleton, createSingletonWithParams, createViewportHandler, dateSchema, debounce, debugPlatformDetection, decryptData, defineEntity, delay, deleteCookie, deleteEntitySchema, detectBrowser, detectErrorSource, detectFeatures, detectLicenseKey, detectPlatform, detectPlatformInfo, detectStorageError, disconnectOAuthSchema, emailSchema, encryptData, enhanceSchema,
|
|
23951
|
-
export type { AccountLinkResult, AccountLinkingInfo, AdminCheckHookResult, AdminClaims, AggregateConfig, AggregateFilterOperator, AggregateOperation, AggregateRequest, AggregateResponse, AnyFieldValue, ApiResponse, AppConfig, AppConfigProviderProps, AppCookieCategories, AppMetadata, AppProvidersProps, AssetsPluginConfig, AttemptRecord, AuthAPI, AuthActions, AuthConfig, AuthContextValue, AuthCoreHookResult, AuthError, AuthEventData, AuthEventKey, AuthEventName, AuthMethod, AuthPartner, AuthPartnerButton, AuthPartnerHookResult, AuthPartnerId, AuthPartnerResult, AuthPartnerState, AuthProvider, AuthProviderProps, AuthRedirectHookResult, AuthRedirectOperation, AuthRedirectOptions, AuthResult, AuthState, AuthStateStore, AuthStatus, AuthTokenHookResult, AuthUser, BackendGeneratedField, BaseActions, BaseCredentials, BaseDocument, BaseEntityFields, BasePartnerState, BaseState, BaseStoreActions, BaseStoreState, BaseUserProfile, BasicUserInfo, BillingAPI, BillingAdapter, BillingErrorCode, BillingEvent, BillingEventData, BillingEventKey, BillingEventName, BillingProvider, BillingProviderConfig, BillingRedirectOperation, Breakpoint, BreakpointAPI, BreakpointUtils, BrowserEngine, BrowserInfo, BrowserType, BusinessEntity, CachedError, CanAPI, CheckGitHubAccessRequest, CheckoutMode, CheckoutOptions, CheckoutSessionMetadata, Claims, ClaimsCacheOptions, ClaimsCacheResult, CleanupFunction, ColumnDef, CommonSubscriptionFeatures, CommonTranslations, CompatibilityReport, ConfidenceLevel, ConsentAPI, ConsentActions, ConsentCategory, ConsentLevel, ConsentState, Context, CookieInfo, CookieOptions, CountryData, CreateCheckoutSessionRequest, CreateCheckoutSessionResponse, CreateEntityData, CreateEntityRequest, CreateEntityResponse, CrudAPI, CrudConfig, CurrencyEntry, CustomClaims, CustomSchemaGenerator, CustomStoreConfig, DateFormatOptions, DateFormatPreset, DateValue, DeleteEntityRequest, DeleteEntityResponse, Density, DnDevOverride, DndevFrameworkConfig, DoNotDevCookieCategories, DoNotDevStore, DoNotDevStoreConfig, DoNotDevStoreState, DoNotDevTransProps, DynamicFormRule, Editable, EffectiveConnectionType, EmailVerificationHookResult, EmailVerificationStatus, Entity, EntityAccessConfig, EntityAccessDefaults, EntityCardListProps, EntityDisplayRendererProps, EntityField, EntityFormRendererProps, EntityHookErrors, EntityListProps, EntityMetadata, EntityOwnershipConfig, EntityOwnershipPublicCondition, EntityRecord, EntityTemplateProps, EntityTranslations, EnvironmentMode, ErrorCode, ErrorHandlerConfig, ErrorHandlerFunction, ErrorSeverity, ErrorSource, EventListener, ExchangeTokenParams, ExchangeTokenRequest, FAQSectionProps, FaviconConfig, Feature, FeatureAccessHookResult, FeatureAvailability, FeatureConsentRequirement, FeatureHookResult, FeatureId, FeatureName, FeatureStatus, FeatureSupport, FeaturesConfig, FeaturesPluginConfig, FeaturesRequiringAnyConsent, FeaturesRequiringConsent, FeaturesWithoutConsent, FieldCondition, FieldType, FieldTypeToValue, FileAsset, FilterVisibleFieldsOptions, FirebaseCallOptions, FirebaseConfig, FirestoreTimestamp, FirestoreUniqueConstraintValidator, FooterConfig, FooterZoneConfig, FormConfig, FormStep, FrameworkFeature, FunctionCallConfig, FunctionCallContext, FunctionCallOptions, FunctionCallResult, FunctionClient, FunctionClientFactoryOptions, FunctionDefaults, FunctionEndpoint, FunctionError, FunctionLoader, FunctionMemory, FunctionMeta, FunctionPlatform, FunctionResponse, FunctionSchema, FunctionSchemas, FunctionSystem, FunctionTrigger, FunctionsConfig, GetCustomClaimsResponse, GetEntityData, GetEntityRequest, GetEntityResponse, GetUserAuthStatusResponse, GetVisibleFieldsOptions, GitHubPermission, GitHubRepoConfig, GrantGitHubAccessRequest, GroupByDefinition, HandleErrorOptions, HeaderZoneConfig, I18nConfig, I18nPluginConfig, I18nProviderProps, ID, INetworkManager, IStorageManager, IStorageStrategy, IntersectionObserverCallback, IntersectionObserverOptions, Invoice, InvoiceItem, LanguageData, LanguageInfo, LayoutAPI, LayoutConfig, LayoutPreset, LegalCompanyInfo, LegalConfig, LegalContactInfo, LegalDirectorInfo, LegalHostingInfo, LegalJurisdictionInfo, LegalSectionsConfig, LegalWebsiteInfo, LicenseValidationResult, ListEntitiesRequest, ListEntitiesResponse, ListEntityData, ListOptions, ListResponse, LoadingActions, LoadingState, MergedBarConfig, MetricDefinition, MobileBehaviorConfig, ModalActions, ModalState, MutationOptions, MutationResponse, NavigationRoute, NetworkCheckConfig, NetworkConnectionType, NetworkReconnectCallback, NetworkState$1 as NetworkState, NetworkStatus, NetworkStatusHookResult, OAuthAPI, OAuthApiRequestOptions, OAuthCallbackHookResult, OAuthConnection, OAuthConnectionInfo, OAuthConnectionRequest, OAuthConnectionStatus, OAuthCredentials, OAuthEventData, OAuthEventKey, OAuthEventName, OAuthPartner, OAuthPartnerButton, OAuthPartnerHookResult, OAuthPartnerId, OAuthPartnerResult, OAuthPartnerState, OAuthPurpose, OAuthRedirectOperation, OAuthRefreshRequest, OAuthRefreshResponse, OAuthResult, OAuthStoreActions, OAuthStoreState, OS, Observable, OperationSchemas, OrderByClause, OverlayAPI, PWAAssetType, PWADisplayMode, PWAPluginConfig, PageAuth, PageMeta, PaginationOptions, PartnerButton, PartnerConnectionState, PartnerIconId, PartnerId, PartnerResult, PartnerType, PayloadCacheEventData, PayloadDocument, PayloadDocumentEventData, PayloadEventKey, PayloadEventName, PayloadGlobalEventData, PayloadMediaEventData, PayloadPageRegenerationEventData, PayloadRequest, PayloadUserEventData, PaymentEventData, PaymentMethod, PaymentMethodType, PaymentMode, Permission, Picture, Platform, PlatformInfo, PresetConfig, PresetRegistry, ProcessPaymentSuccessRequest, ProcessPaymentSuccessResponse, ProductDeclaration, ProviderInstances, QueryClientProviderProps, QueryConfig$1 as QueryConfig, QueryFunction, QueryKey, QueryOptions, RateLimitConfig, RateLimitManager, RateLimitResult, RateLimitState, RateLimiter, ReadCallback, RedirectOperation, RedirectOverlayActions, RedirectOverlayConfig, RedirectOverlayPhase, RedirectOverlayState, Reference, RefreshSubscriptionRequest, RefreshSubscriptionResponse, RemoveCustomClaimsResponse, ResolvedLayoutConfig, RevokeGitHubAccessRequest, RouteData, RouteManifest, RouteMeta, RouteSource, RoutesPluginConfig, SEOConfig, SchemaMetadata, SchemaWithVisibility, ScopeConfig, ScopeProviderFn, SelectOption, SetCustomClaimsResponse, SidebarZoneConfig, SlotContent, StatusField, StorageError, StorageErrorType, StorageOptions, StorageScope, StorageType, Store,
|
|
25150
|
+
export { AGGREGATE_FILTER_OPERATORS, AGGREGATE_OPERATIONS, AUTH_COMPUTED_KEYS, AUTH_EVENTS, AUTH_PARTNERS, AUTH_PARTNER_STATE, AUTH_STORE_KEYS, AppConfigContext, AppConfigProvider, AuthHardening, AuthUserSchema, BACKEND_GENERATED_FIELD_NAMES, BILLING_EVENTS, BILLING_STORE_KEYS, BREAKPOINT_RANGES, BREAKPOINT_THRESHOLDS, BaseStorageStrategy, COMMON_TIER_CONFIGS, CONFIDENCE_LEVELS, CONSENT_CATEGORY, CONSENT_LEVELS, CONTEXTS, COUNTRIES, CRUD_OPERATORS, CURRENCY_MAP, CheckoutSessionMetadataSchema, ClaimsCache, CreateCheckoutSessionRequestSchema, CreateCheckoutSessionResponseSchema, CustomClaimsSchema, DEFAULT_ENTITY_ACCESS, DEFAULT_ERROR_MESSAGES, DEFAULT_LAYOUT_PRESET, DEFAULT_STATUS_OPTIONS, DEFAULT_STATUS_VALUE, DEFAULT_SUBSCRIPTION, DEGRADED_AUTH_API, DEGRADED_BILLING_API, DEGRADED_CRUD_API, DEGRADED_OAUTH_API, DENSITY, DoNotDevError, EDITABLE, ENTITY_HOOK_ERRORS, ENVIRONMENTS, ERROR_CODES, ERROR_SEVERITY, ERROR_SOURCE, EntityHookError, EventEmitter, FAQSection, FEATURES, FEATURE_CONSENT_MATRIX, FEATURE_STATUS, FIELD_TYPES, FIREBASE_ERROR_MAP, FIRESTORE_ID_PATTERN, FRAMEWORK_FEATURES, Flag, GITHUB_PERMISSION_LEVELS, HIDDEN_STATUSES, index_d$1 as Hooks, HybridStorageStrategy, index_d as I18n, LANGUAGES, LAYOUT_PRESET, LIST_SCHEMA_TYPE, LanguageFAB, LanguageSelector, LanguageToggleGroup, LocalStorageStrategy, OAUTH_EVENTS, OAUTH_PARTNERS, OAUTH_STORE_KEYS, ORDER_DIRECTION, PARTNER_ICONS, PAYLOAD_EVENTS, PERMISSIONS, PLATFORMS, PWA_ASSET_TYPES, PWA_DISPLAY_MODES, ProductDeclarationSchema, ProductDeclarationsSchema, QueryClient, QueryClientProvider, QueryProviders, ROUTE_SOURCES, STORAGE_SCOPES, STORAGE_TYPES, STRIPE_EVENTS, STRIPE_MODES, SUBSCRIPTION_DURATIONS, SUBSCRIPTION_STATUS, SUBSCRIPTION_TIERS, index_d$2 as Schemas, SingletonManager, StorageManager, index_d$3 as Stores, StripeBackConfigSchema, StripeFrontConfigSchema, StripePaymentSchema, StripeSubscriptionSchema, SubscriptionClaimsSchema, SubscriptionDataSchema, TECHNICAL_FIELD_NAMES, TRANS_TAGS, TokenManager, Trans, TranslatedText, index_d$5 as Types, USER_ROLES, UserSubscriptionSchema, index_d$4 as Utils, VISIBILITY, ViewportHandler, WebhookEventSchema, addressSchema, applyTheme, areFeaturesAvailable, arraySchema, baseFields, booleanSchema, buildRoutePath, canRedirectExternally, captureError, captureErrorToSentry, captureMessage, checkGitHubAccessSchema, checkLicense, cleanupSentry, clearFeatureCache, clearLocalStorage, clearPartnerCache, clearSchemaGenerators, clearScopeProviders, commonErrorCodeMappings, compactToISOString, configureProviders, cooldown, createAsyncSingleton, createDefaultSubscriptionClaims, createDefaultUserProfile, createDoNotDevStore, createEntitySchema, createErrorHandler, createMetadata, createMethodProxy, createProvider, createProviders, createSchemas, createSingleton, createSingletonWithParams, createViewportHandler, dateSchema, debounce, debugPlatformDetection, decryptData, defineEntity, delay, deleteCookie, deleteEntitySchema, detectBrowser, detectErrorSource, detectFeatures, detectLicenseKey, detectPlatform, detectPlatformInfo, detectStorageError, disconnectOAuthSchema, emailSchema, encryptData, enhanceSchema, ensureSpreadable, exchangeTokenSchema, extractRoutePath, fileSchema, filesSchema, filterVisibleFields, formatCookieList, formatCurrency, formatDate, formatRelativeTime, gdprConsentSchema, generateCodeChallenge, generateCodeVerifier, generateCompatibilityReport, generateEncryptionKey, generateFirestoreRuleCondition, generatePKCEPair, geopointSchema, getActiveCookies, getAppShortName, getAssetsConfig, getAuthDomain, getAuthPartnerConfig, getAuthPartnerIdByFirebaseId, getAvailableFeatures, getAvailableThemeNames, getAvailableThemes, getBreakpointFromWidth, getBreakpointUtils, getBrowserRecommendations, getCollectionName, getConfigSection, getConfigSource, getConnectionsSchema, getCookie, getCookieExamples, getCookiesByCategory, getCountries, getCurrencyLocale, getCurrencySymbol, getCurrentOrigin, getCurrentTimestamp, getDndevConfig, getEnabledAuthPartners, getEnabledOAuthPartners, getEncryptionKey, getEntitySchema, getFeatureSummary, getFlagCodes, getI18nConfig, getI18nInstance, getListCardFieldNames, getLocalStorageItem, getNextEnvVar, getOAuthClientId, getOAuthPartnerConfig, getOAuthRedirectUri, getOAuthRedirectUrl, getPartnerCacheStatus, getPartnerConfig, getPlatformEnvVar, getProvider, getProviderColor, getQueryClient, getRegisteredSchemaTypes, getRegisteredScopeProviders, getRoleFromClaims, getRouteManifest, getRouteSource, getRoutes, getRoutesConfig, getSchemaType, getScopeValue, getSmartDefaults, getStorageManager, getThemeInfo, getThemesConfig, getTokenManager, getValidAuthPartnerConfig, getValidAuthPartnerIds, getValidOAuthPartnerConfig, getValidOAuthPartnerIds, getVisibleFields, getVisibleItems, getViteEnvVar, getWeekFromISOString, githubPermissionSchema, githubRepoConfigSchema, globalEmitter, grantGitHubAccessSchema, handleError, hasCustomSchemaGenerator, hasFlag, hasMetadata, hasOptionalCookies, hasProvider, hasRestrictedVisibility, hasRoleAccess, hasScopeProvider, hasTierAccess, ibanSchema, initSentry, initializeConfig, initializePlatformDetection, isAuthPartnerEnabled, isAuthPartnerId, isBackendGeneratedField, isBreakpoint, isClient, isCompactDateString, isConfigAvailable, isDev, isDoNotDevStore, isElementInViewport, isEmailVerificationRequired, isExpo, isFeatureAvailable, isFieldVisible, isFrameworkField, isIntersectionObserverSupported, isLocalStorageAvailable, isNextJs, isOAuthPartnerEnabled, isOAuthPartnerId, isPKCESupported, isPlatform, isReactNative, isServer, isTest, isValidTheme, isVite, isoToCompactString, lazyImport, listEntitiesSchema, mapSchema, mapToDoNotDevError, maybeTranslate, multiselectSchema, neverSchema, normalizeToISOString, numberSchema, observeElement, overrideFeatures, overridePaymentModes, overridePermissions, overrideSubscriptionStatus, overrideSubscriptionTiers, overrideUserRoles, parseDate, parseDateToNoonUTC, passwordSchema, pictureSchema, picturesSchema, priceSchema, queryClient, rangeOptions, redirectToExternalUrl, redirectToExternalUrlWithErrorHandling, referenceSchema, refreshTokenSchema, registerSchemaGenerator, registerScopeProvider, registerUniqueConstraintValidator, removeLocalStorageItem, resetProviders, resolveAppConfig, resolveAuthConfig, resolvePageMeta, revokeGitHubAccessSchema, safeLocalStorage, safeSessionStorage, safeValidate, selectSchema, setCookie, setLocalStorageItem, shouldShowEmailVerification, showNotification, stringSchema, supportsFeature, switchSchema, telSchema, textSchema, throttle, timestampToISOString, timingUtils, toDateOnly, toISOString, translateArray, translateArrayRange, translateArrayWithIndices, translateObjectArray, unregisterScopeProvider, updateEntitySchema, updateMetadata, urlSchema, useAbortControllerStore, useAnalyticsConsent, useAppConfig, useAuthConfig, useBreakpoint, useBreathingTimer, useClickOutside, useConsent, useConsentReady, useConsentStore, useDebounce, useEventListener, useFaviconConfig, useFeatureConsent, useFeaturesConfig, useFunctionalConsent, useHasConsented, useI18nReady, useIntersectionObserver, useIsClient, useLanguageSelector, useLayout, useLocalStorage, useMarketingConsent, useMutation, useNavigationStore, useNetwork, useNetworkConnectionType, useNetworkOnline, useNetworkStatus, useNetworkStore, useOverlay, useOverlayStore, useQuery, useQueryClient, useRateLimit, useSafeContext, useScriptLoader, useSeoConfig, useStorageManager, useTheme, useThemeReady, useThemeStore, useTranslation, useViewportVisibility, validateAuthPartners, validateAuthSchemas, validateAuthUser, validateBillingSchemas, validateCheckoutSessionMetadata, validateCodeChallenge, validateCodeVerifier, validateCreateCheckoutSessionRequest, validateCreateCheckoutSessionResponse, validateCustomClaims, validateDates, validateDocument, validateLicenseKey, validateOAuthPartners, validateStripeBackConfig, validateStripeFrontConfig, validateSubscriptionClaims, validateSubscriptionData, validateUniqueFields, validateUserSubscription, validateWebhookEvent, validateWithSchema, withErrorHandling, withGracefulDegradation, wrapAuthError, wrapCrudError, wrapStorageError };
|
|
25151
|
+
export type { AccountLinkResult, AccountLinkingInfo, AdminCheckHookResult, AdminClaims, AggregateConfig, AggregateFilterOperator, AggregateOperation, AggregateRequest, AggregateResponse, AnyFieldValue, ApiResponse, AppConfig, AppConfigProviderProps, AppCookieCategories, AppMetadata, AppProvidersProps, AssetsPluginConfig, AttemptRecord, AuditEvent, AuditEventType, AuthAPI, AuthActions, AuthConfig, AuthContextValue, AuthCoreHookResult, AuthError, AuthEventData, AuthEventKey, AuthEventName, AuthHardeningConfig, AuthHardeningContext, AuthMethod, AuthPartner, AuthPartnerButton, AuthPartnerHookResult, AuthPartnerId, AuthPartnerResult, AuthPartnerState, AuthProvider, AuthProviderProps, AuthRedirectHookResult, AuthRedirectOperation, AuthRedirectOptions, AuthResult, AuthState, AuthStateStore, AuthStatus, AuthTokenHookResult, AuthUser, BackendGeneratedField, BaseActions, BaseCredentials, BaseDocument, BaseEntityFields, BasePartnerState, BaseState, BaseStoreActions, BaseStoreState, BaseUserProfile, BasicUserInfo, BillingAPI, BillingAdapter, BillingErrorCode, BillingEvent, BillingEventData, BillingEventKey, BillingEventName, BillingProvider, BillingProviderConfig, BillingRedirectOperation, Breakpoint, BreakpointAPI, BreakpointUtils, BrowserEngine, BrowserInfo, BrowserType, BuiltInFieldType, BusinessEntity, CachedError, CanAPI, CheckGitHubAccessRequest, CheckoutMode, CheckoutOptions, CheckoutSessionMetadata, Claims, ClaimsCacheOptions, ClaimsCacheResult, CleanupFunction, CollectionSubscriptionCallback, ColumnDef, CommonSubscriptionFeatures, CommonTranslations, CompatibilityReport, ConfidenceLevel, ConsentAPI, ConsentActions, ConsentCategory, ConsentLevel, ConsentState, Context, CookieInfo, CookieOptions, CountryData, CreateCheckoutSessionRequest, CreateCheckoutSessionResponse, CreateEntityData, CreateEntityRequest, CreateEntityResponse, CrudAPI, CrudCardProps, CrudConfig, CrudOperator, CurrencyEntry, CustomClaims, CustomFieldOptionsMap, CustomSchemaGenerator, CustomStoreConfig, DateFormatOptions, DateFormatPreset, DateValue, DeleteEntityRequest, DeleteEntityResponse, Density, DnDevOverride, DndevFrameworkConfig, DndevProviders, DndevStoreApi, DoNotDevCookieCategories, DoNotDevStore, DoNotDevStoreConfig, DoNotDevStoreState, DoNotDevTransProps, DocumentSubscriptionCallback, DynamicFormRule, Editable, EffectiveConnectionType, EmailVerificationHookResult, EmailVerificationStatus, Entity, EntityAccessConfig, EntityAccessDefaults, EntityCardListProps, EntityDisplayRendererProps, EntityField, EntityFormRendererProps, EntityHookErrors, EntityListProps, EntityMetadata, EntityOwnershipConfig, EntityOwnershipPublicCondition, EntityRecommendationsProps, EntityRecord, EntityTemplateProps, EntityTranslations, EnvironmentMode, ErrorCode, ErrorHandlerConfig, ErrorHandlerFunction, ErrorSeverity, ErrorSource, EventListener, ExchangeTokenParams, ExchangeTokenRequest, FAQSectionProps, FaviconConfig, Feature, FeatureAccessHookResult, FeatureAvailability, FeatureConsentRequirement, FeatureHookResult, FeatureId, FeatureName, FeatureStatus, FeatureSupport, FeaturesConfig, FeaturesPluginConfig, FeaturesRequiringAnyConsent, FeaturesRequiringConsent, FeaturesWithoutConsent, FieldCondition, FieldType, FieldTypeToValue, FileAsset, FilterVisibleFieldsOptions, FirebaseCallOptions, FirebaseConfig, FirestoreTimestamp, FirestoreUniqueConstraintValidator, FooterConfig, FooterZoneConfig, FormConfig, FormStep, FrameworkFeature, FunctionCallConfig, FunctionCallContext, FunctionCallOptions, FunctionCallResult, FunctionClient, FunctionClientFactoryOptions, FunctionDefaults, FunctionEndpoint, FunctionError, FunctionLoader, FunctionMemory, FunctionMeta, FunctionPlatform, FunctionResponse, FunctionSchema, FunctionSchemas, FunctionSystem, FunctionTrigger, FunctionsConfig, GetCustomClaimsResponse, GetEntityData, GetEntityRequest, GetEntityResponse, GetUserAuthStatusResponse, GetVisibleFieldsOptions, GitHubPermission, GitHubRepoConfig, GrantGitHubAccessRequest, GroupByDefinition, HandleErrorOptions, HeaderZoneConfig, I18nConfig, I18nPluginConfig, I18nProviderProps, ICallableProvider, ICrudAdapter, ID, INetworkManager, IServerAuthAdapter, IStorageAdapter, IStorageManager, IStorageStrategy, IntersectionObserverCallback, IntersectionObserverOptions, Invoice, InvoiceItem, LanguageData, LanguageInfo, LayoutAPI, LayoutConfig, LayoutPreset, LegalCompanyInfo, LegalConfig, LegalContactInfo, LegalDirectorInfo, LegalHostingInfo, LegalJurisdictionInfo, LegalSectionsConfig, LegalWebsiteInfo, LicenseValidationResult, ListCardLayout, ListEntitiesRequest, ListEntitiesResponse, ListEntityData, ListOptions, ListResponse, ListSchemaType, LoadingActions, LoadingState, LockoutResult, MergedBarConfig, MetricDefinition, MobileBehaviorConfig, ModalActions, ModalState, MutationOptions, MutationResponse, NavigationRoute, NetworkCheckConfig, NetworkConnectionType, NetworkReconnectCallback, NetworkState$1 as NetworkState, NetworkStatus, NetworkStatusHookResult, OAuthAPI, OAuthApiRequestOptions, OAuthCallbackHookResult, OAuthConnection, OAuthConnectionInfo, OAuthConnectionRequest, OAuthConnectionStatus, OAuthCredentials, OAuthEventData, OAuthEventKey, OAuthEventName, OAuthPartner, OAuthPartnerButton, OAuthPartnerHookResult, OAuthPartnerId, OAuthPartnerResult, OAuthPartnerState, OAuthPurpose, OAuthRedirectOperation, OAuthRefreshRequest, OAuthRefreshResponse, OAuthResult, OAuthStoreActions, OAuthStoreState, OS, Observable, OperationSchemas, OrderByClause, OrderDirection, OverlayAPI, PWAAssetType, PWADisplayMode, PWAPluginConfig, PageAuth, PageMeta, PaginatedQueryResult, PaginationOptions, PartnerButton, PartnerConnectionState, PartnerIconId, PartnerId, PartnerResult, PartnerType, PayloadCacheEventData, PayloadDocument, PayloadDocumentEventData, PayloadEventKey, PayloadEventName, PayloadGlobalEventData, PayloadMediaEventData, PayloadPageRegenerationEventData, PayloadRequest, PayloadUserEventData, PaymentEventData, PaymentMethod, PaymentMethodType, PaymentMode, Permission, Picture, Platform, PlatformInfo, PresetConfig, PresetRegistry, ProcessPaymentSuccessRequest, ProcessPaymentSuccessResponse, ProductDeclaration, ProviderInstances, QueryClientProviderProps, QueryConfig$1 as QueryConfig, QueryFunction, QueryKey, QueryOptions$1 as QueryOptions, QueryOrderBy, QueryWhereClause, RateLimitBackend, RateLimitConfig, RateLimitManager, RateLimitResult, RateLimitState, RateLimiter, ReadCallback, RedirectOperation, RedirectOverlayActions, RedirectOverlayConfig, RedirectOverlayPhase, RedirectOverlayState, Reference, RefreshSubscriptionRequest, RefreshSubscriptionResponse, RemoveCustomClaimsResponse, ResolvedLayoutConfig, RevokeGitHubAccessRequest, RouteData, RouteManifest, RouteMeta, RouteSource, RoutesPluginConfig, SEOConfig, SchemaMetadata, SchemaWithVisibility, ScopeConfig, ScopeProviderFn, SecurityContext, SecurityEntityConfig, SelectOption, ServerRateLimitConfig, ServerRateLimitResult, ServerUserRecord, SetCustomClaimsResponse, SidebarZoneConfig, SlotContent, StatusField, StorageError, StorageErrorType, StorageOptions, StorageScope, StorageType, Store, StripeBackConfig, StripeCheckoutRequest, StripeCheckoutResponse, StripeCheckoutSessionEventData, StripeConfig, StripeCustomer, StripeCustomerEventData, StripeEventData, StripeEventKey, StripeEventName, StripeFrontConfig, StripeInvoice, StripeInvoiceEventData, StripePayment, StripePaymentIntentEventData, StripePaymentMethod, StripePrice, StripeProduct, StripeProvider, StripeSubscription, StripeSubscriptionData, StripeWebhookEvent, StripeWebhookEventData, Subscription, SubscriptionClaims, SubscriptionConfig, SubscriptionData, SubscriptionDuration, SubscriptionEventData, SubscriptionHookResult, SubscriptionInfo, SubscriptionStatus, SubscriptionTier, SupportedLanguage, TechnicalField, ThemeAPI, ThemeActions, ThemeInfo, ThemeMode, ThemeState, ThemesPluginConfig, TierAccessHookResult, Timestamp, TokenInfo, TokenManagerOptions, TokenResponse, TokenState, TokenStatus, TransTag, TranslationOptions, TranslationResource, TypedBaseFields, UIFieldOptions, UniqueConstraintValidator, UniqueKeyDefinition, UnsubscribeFn, UpdateEntityData, UpdateEntityRequest, UpdateEntityResponse, UploadOptions, UploadProgressCallback, UploadResult, UseClickOutsideOptions, UseClickOutsideReturn, UseDebounceOptions, UseEventListenerOptions, UseEventListenerReturn, UseFunctionsCallResult, UseFunctionsMutationOptions, UseFunctionsMutationResult, UseFunctionsQueryOptions, UseFunctionsQueryResult, UseIntersectionObserverOptions, UseIntersectionObserverReturn, UseLocalStorageOptions, UseLocalStorageReturn, UseMutationOptions, UseMutationOptionsWithErrorHandling, UseMutationResult, UseQueryOptions, UseQueryOptionsWithErrorHandling, UseQueryResult, UseScriptLoaderOptions, UseScriptLoaderReturn, UseTranslationOptionsEnhanced, UseViewportVisibilityOptions, UseViewportVisibilityReturn, UserContext, UserProfile, UserProviderData, UserRole, UserSubscription, ValidationRules, ValueTypeForField, VerifiedToken, ViewportDetectionOptions, ViewportDetectionResult, Visibility, WebhookEvent, WebhookEventData, WhereClause, WhereOperator, WithMetadata, dndevSchema };
|