@feelflow/ffid-sdk 6.0.0 → 7.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -397,6 +397,53 @@ await ffid.updateMemberRole({
397
397
  - `role` は `admin` / `member` / `viewer` のみ指定可能です。`owner` は追加・昇格 API では扱いません。
398
398
  - agency client と同じ呼び味が必要な場合は `ffid.addMember(organizationId, { email, role })` も使えます。
399
399
 
400
+ ### Organization profile / public logo wall
401
+
402
+ hub 等の外部サービスが企業プロフィールを登録・照会し、FeelFlow 全サービス共通のロゴウォールを表示するためのメソッド(#5485 / #5547)。
403
+
404
+ - **`getOrganizationProfile` / `upsertOrganizationProfile` / `uploadOrganizationLogo`** は **`authMode: 'service-key'` 専用**(scope: `organization:read` / `organization:write`)。`token` / `cookie` モードで呼ぶとサーバーへ往復せず `VALIDATION_ERROR`。
405
+ - **`getPublicLogoWall`** は認証不要。service-key を送らない。エンドポイントは `GET /api/v1/organizations/logo-wall`(公開 API なので SDK を使わず直接 GET してもよいが、型付きエラーが欲しければ SDK 経由を推奨)。
406
+ - `upsert` の `listingConsent.consented: true` では `consentVersion` と `consentedByUserId` が必須。同意操作者が対象 org の active メンバーでないとサーバーが `CONSENTED_BY_NOT_MEMBER` を返す。
407
+
408
+ ```ts
409
+ import {
410
+ createFFIDClient,
411
+ FFID_ORGANIZATION_PROFILE_ERROR_CODES,
412
+ } from '@feelflow/ffid-sdk/server'
413
+
414
+ const ffid = createFFIDClient({
415
+ serviceCode: 'feel-agent',
416
+ scope: '',
417
+ authMode: 'service-key',
418
+ serviceApiKey: process.env.FFID_SERVICE_API_KEY!,
419
+ })
420
+
421
+ const current = await ffid.getOrganizationProfile(organizationId)
422
+ if (current.error) throw new Error(current.error.message)
423
+
424
+ const upsert = await ffid.upsertOrganizationProfile(organizationId, {
425
+ displayName: '株式会社サンプル',
426
+ industry: 'it-software',
427
+ companySize: '11-50',
428
+ websiteUrl: 'https://example.co.jp',
429
+ listingConsent: {
430
+ consented: true,
431
+ consentVersion: 'v1.0',
432
+ consentedByUserId: userId,
433
+ },
434
+ })
435
+ if (upsert.error?.code === FFID_ORGANIZATION_PROFILE_ERROR_CODES.CONSENTED_BY_NOT_MEMBER) {
436
+ throw new Error(upsert.error.message)
437
+ }
438
+
439
+ await ffid.uploadOrganizationLogo(organizationId, logoFile)
440
+
441
+ const wall = await ffid.getPublicLogoWall()
442
+ // wall.data.entries: { displayName, logoUrl, websiteUrl }[]
443
+ ```
444
+
445
+ 位置引数と params オブジェクトの両方を受け付ける(`addMember` と同じ)。
446
+
400
447
  ### Provisioning(users / organizations)
401
448
 
402
449
  外部サービスからの一括移行向けに、**service-key 認証**でユーザー・組織を冪等にプロビジョニングするメソッド。REST を直叩きせず `createFFIDClient` 経由で呼べる(SDK-first、#3790 / #4127)。
@@ -343,31 +343,20 @@ type GetDocumentWire = z.infer<typeof GetDocumentWireSchema>;
343
343
  * call. Spec §5.3 requires non-null warnings to be visible to the user.
344
344
  *
345
345
  * @remarks
346
- * Multi-locale consumers should pattern-match on `code` and resolve their own
347
- * copy. The `message` field defaults to the SDK's built-in Japanese copy
348
- * (`DEFAULT_MERGE_WARNING_MESSAGES`); pass `mergeWarningMessages` on
349
- * `<FFIDAnalyticsProvider>` to inject locale-specific overrides without
350
- * losing the warning event itself.
346
+ * Code-only since v7.0.0 (#3402). Copy lives in the consumer's own i18n layer:
347
+ * pattern-match on `code` and resolve it against a
348
+ * `Record<FFIDConsentMergeWarning, string>` so TypeScript exhaustiveness-checks
349
+ * every literal and the dictionary can never leak `undefined`.
350
+ *
351
+ * Kept as an object rather than collapsed into a bare
352
+ * `FFIDConsentMergeWarning` alias for two reasons: consumers that followed the
353
+ * v5.5 deprecation notice already read `warning.code`, so this shape needs no
354
+ * second migration from them; and it leaves room to widen into a discriminated
355
+ * union (`{ code: 'drift_detected', mergeStrategy: 'db_wins' } | ...`) without
356
+ * another breaking change.
351
357
  */
352
358
  interface FFIDConsentMergeWarningEvent {
353
359
  code: FFIDConsentMergeWarning;
354
- /**
355
- * Human-readable copy. Defaults to the SDK's built-in Japanese copy unless
356
- * `<FFIDAnalyticsProvider mergeWarningMessages={...}>` overrides it.
357
- *
358
- * @deprecated Scheduled for removal in `@feelflow/ffid-sdk` v6.0 so that
359
- * `FFIDConsentMergeWarningEvent` becomes symmetric with
360
- * `FFIDConsentSyncResult.warning` (code-only). Consumers should
361
- * pattern-match on `code` and resolve copy in their own i18n layer.
362
- *
363
- * Migration: replace `event.message` reads with `messages[event.code]`
364
- * where `messages` is typed as
365
- * `Record<FFIDConsentMergeWarning, string>` (not `Partial<...>`) so
366
- * TypeScript exhaustiveness-checks every enum value at compile time
367
- * and the dictionary can never leak `undefined` the way an unchecked
368
- * `event.message` could in pre-v5.5 SDKs.
369
- */
370
- message: string;
371
360
  }
372
361
  /**
373
362
  * Result of a sync call surfaced to consumers — drops the wire envelope and
@@ -779,27 +768,11 @@ interface FFIDAnalyticsProviderProps {
779
768
  * suppressed by a UX dismissal.
780
769
  */
781
770
  dismissalCooldownMinutes?: number;
782
- /**
783
- * Per-locale override map for `FFIDConsentMergeWarningEvent.message`.
784
- *
785
- * The Provider derives `message` for the `onConsentChange(state, warning)`
786
- * callback from this map, falling back to `DEFAULT_MERGE_WARNING_MESSAGES`
787
- * (JP) for any missing key. Pass only the keys you need to translate —
788
- * partial overrides are merged with the defaults.
789
- *
790
- * Note: the underlying `code` (`FFIDConsentMergeWarning`) is the canonical
791
- * identifier — multi-locale consumers should prefer pattern-matching on
792
- * `warning.code` over reading `warning.message` directly. The `message`
793
- * field is `@deprecated` and scheduled for removal in v6.0; this prop is
794
- * the interim escape hatch so non-JP consumers don't have to wait for the
795
- * v6.0 major to surface localized copy.
796
- */
797
- mergeWarningMessages?: Partial<Record<FFIDConsentMergeWarning, string>>;
798
771
  /** Optional fetch override (mainly for tests). */
799
772
  fetchImpl?: typeof fetch;
800
773
  children: ReactNode;
801
774
  }
802
- declare function FFIDAnalyticsProvider({ baseUrl, serviceApiKey, getAccessToken, gaMeasurementId, gaEnabled, sentryReplay, sentry, onConsentChange, onError, autoShowBanner, dismissalCooldownMinutes, mergeWarningMessages, fetchImpl, children, }: FFIDAnalyticsProviderProps): React.JSX.Element;
775
+ declare function FFIDAnalyticsProvider({ baseUrl, serviceApiKey, getAccessToken, gaMeasurementId, gaEnabled, sentryReplay, sentry, onConsentChange, onError, autoShowBanner, dismissalCooldownMinutes, fetchImpl, children, }: FFIDAnalyticsProviderProps): React.JSX.Element;
803
776
 
804
777
  interface FFIDConsentContextValue {
805
778
  /** Current consent state. Always non-null; "not yet decided" is encoded by `hasDecided=false`. */
@@ -850,12 +823,6 @@ interface FFIDConsentContextValue {
850
823
  }
851
824
  declare const FFID_CONSENT_NOT_DECIDED_STATE: FFIDConsentState;
852
825
  declare const FFIDConsentContext: React$1.Context<FFIDConsentContextValue>;
853
- /**
854
- * Warning literal-keyed default copy for `local_state_overridden` /
855
- * `shared_device_detected` / `drift_detected`. Surfaced by the Provider via
856
- * `onConsentChange(state, warning)` per spec §5.3.
857
- */
858
- declare const DEFAULT_MERGE_WARNING_MESSAGES: Record<FFIDConsentMergeWarning, string>;
859
826
 
860
827
  /**
861
828
  * `useFFIDConsent` — primary hook for reading + updating cookie consent.
@@ -1071,4 +1038,4 @@ interface FFIDCookieLinkProps {
1071
1038
  }
1072
1039
  declare function FFIDCookieLink({ children, className, style, id, }: FFIDCookieLinkProps): React.JSX.Element;
1073
1040
 
1074
- export { FFID_CONSENT_NOT_DECIDED_STATE as $, ALL_DENIED_EXCEPT_NECESSARY as A, type FFIDConsentMergeWarning as B, CONSENT_COOKIE_MAX_AGE_SEC as C, DEFAULT_CONSENT_ERROR_MESSAGES as D, type FFIDConsentMergeWarningEvent as E, type FFIDConsentResult as F, type GetConsentMeWire as G, FFIDConsentMergeWarningSchema as H, type FFIDConsentSource as I, FFIDConsentSourceSchema as J, FFIDConsentStateSchema as K, FFIDConsentUpdateSchema as L, FFIDCookieBanner as M, type FFIDCookieBannerClassNames as N, type FFIDCookieBannerProps as O, type PostConsentWire as P, FFIDCookieLink as Q, type FFIDCookieLinkProps as R, FFIDCookiePolicySchema as S, FFIDCookieSettings as T, type FFIDCookieSettingsClassNames as U, type FFIDCookieSettingsProps as V, type FFIDInternalConsentSource as W, FFIDInternalConsentSourceSchema as X, type FFIDPublicConsentSource as Y, FFIDPublicConsentSourceSchema as Z, FFID_CONSENT_ERROR_CODES as _, type FFIDConsentState as a, type GetCategoriesWire as a0, GetCategoriesWireSchema as a1, GetConsentMeWireSchema as a2, type GetDocumentWire as a3, GetDocumentWireSchema as a4, type GtagBridge as a5, type GtagBridgeOptions as a6, type PostConsentRequest as a7, PostConsentRequestSchema as a8, PostConsentWireSchema as a9, type PostSyncRequest as aa, PostSyncRequestSchema as ab, PostSyncWireSchema as ac, PostWithdrawWireSchema as ad, type UseFFIDConsentPreferencesReturn as ae, type UseFFIDConsentReturn as af, clearConsentDismissalTimestamp as ag, clearConsentSessionMirror as ah, createGtagBridge as ai, decodeConsentCookie as aj, deleteConsentCookie as ak, encodeConsentCookie as al, mapCategoriesToGtagParams as am, readConsentCookie as an, readConsentDismissalTimestamp as ao, readConsentSessionMirror as ap, useFFIDConsent as aq, useFFIDConsentPreferences as ar, writeConsentCookie as as, writeConsentDismissalTimestamp as at, writeConsentSessionMirror as au, type FFIDConsentUpdate as b, type FFIDConsentCategories as c, type FFIDConsentSyncResult as d, type FFIDConsentCategoryMetadata as e, type FFIDCookiePolicy as f, type PostSyncWire as g, type PostWithdrawWire as h, CONSENT_COOKIE_NAME as i, CONSENT_DISMISSAL_TIMESTAMP_KEY as j, CONSENT_SESSION_STORAGE_KEY as k, COOKIE_VERSION as l, DEFAULT_MERGE_WARNING_MESSAGES as m, DeviceIdSchema as n, FFIDAnalyticsProvider as o, type FFIDAnalyticsProviderProps as p, FFIDConsentCategoriesSchema as q, type FFIDConsentCategoryCode as r, FFIDConsentCategoryCodeSchema as s, FFIDConsentCategoryMetadataSchema as t, FFIDConsentContext as u, type FFIDConsentContextValue as v, FFIDConsentError as w, type FFIDConsentErrorCode as x, type FFIDConsentMergeStrategy as y, FFIDConsentMergeStrategySchema as z };
1041
+ export { type GetCategoriesWire as $, ALL_DENIED_EXCEPT_NECESSARY as A, type FFIDConsentMergeWarningEvent as B, CONSENT_COOKIE_MAX_AGE_SEC as C, DEFAULT_CONSENT_ERROR_MESSAGES as D, FFIDConsentMergeWarningSchema as E, type FFIDConsentResult as F, type GetConsentMeWire as G, type FFIDConsentSource as H, FFIDConsentSourceSchema as I, FFIDConsentStateSchema as J, FFIDConsentUpdateSchema as K, FFIDCookieBanner as L, type FFIDCookieBannerClassNames as M, type FFIDCookieBannerProps as N, FFIDCookieLink as O, type PostConsentWire as P, type FFIDCookieLinkProps as Q, FFIDCookiePolicySchema as R, FFIDCookieSettings as S, type FFIDCookieSettingsClassNames as T, type FFIDCookieSettingsProps as U, type FFIDInternalConsentSource as V, FFIDInternalConsentSourceSchema as W, type FFIDPublicConsentSource as X, FFIDPublicConsentSourceSchema as Y, FFID_CONSENT_ERROR_CODES as Z, FFID_CONSENT_NOT_DECIDED_STATE as _, type FFIDConsentState as a, GetCategoriesWireSchema as a0, GetConsentMeWireSchema as a1, type GetDocumentWire as a2, GetDocumentWireSchema as a3, type GtagBridge as a4, type GtagBridgeOptions as a5, type PostConsentRequest as a6, PostConsentRequestSchema as a7, PostConsentWireSchema as a8, type PostSyncRequest as a9, PostSyncRequestSchema as aa, PostSyncWireSchema as ab, PostWithdrawWireSchema as ac, type UseFFIDConsentPreferencesReturn as ad, type UseFFIDConsentReturn as ae, clearConsentDismissalTimestamp as af, clearConsentSessionMirror as ag, createGtagBridge as ah, decodeConsentCookie as ai, deleteConsentCookie as aj, encodeConsentCookie as ak, mapCategoriesToGtagParams as al, readConsentCookie as am, readConsentDismissalTimestamp as an, readConsentSessionMirror as ao, useFFIDConsent as ap, useFFIDConsentPreferences as aq, writeConsentCookie as ar, writeConsentDismissalTimestamp as as, writeConsentSessionMirror as at, type FFIDConsentUpdate as b, type FFIDConsentCategories as c, type FFIDConsentSyncResult as d, type FFIDConsentCategoryMetadata as e, type FFIDCookiePolicy as f, type PostSyncWire as g, type PostWithdrawWire as h, CONSENT_COOKIE_NAME as i, CONSENT_DISMISSAL_TIMESTAMP_KEY as j, CONSENT_SESSION_STORAGE_KEY as k, COOKIE_VERSION as l, DeviceIdSchema as m, FFIDAnalyticsProvider as n, type FFIDAnalyticsProviderProps as o, FFIDConsentCategoriesSchema as p, type FFIDConsentCategoryCode as q, FFIDConsentCategoryCodeSchema as r, FFIDConsentCategoryMetadataSchema as s, FFIDConsentContext as t, type FFIDConsentContextValue as u, FFIDConsentError as v, type FFIDConsentErrorCode as w, type FFIDConsentMergeStrategy as x, FFIDConsentMergeStrategySchema as y, type FFIDConsentMergeWarning as z };
@@ -343,31 +343,20 @@ type GetDocumentWire = z.infer<typeof GetDocumentWireSchema>;
343
343
  * call. Spec §5.3 requires non-null warnings to be visible to the user.
344
344
  *
345
345
  * @remarks
346
- * Multi-locale consumers should pattern-match on `code` and resolve their own
347
- * copy. The `message` field defaults to the SDK's built-in Japanese copy
348
- * (`DEFAULT_MERGE_WARNING_MESSAGES`); pass `mergeWarningMessages` on
349
- * `<FFIDAnalyticsProvider>` to inject locale-specific overrides without
350
- * losing the warning event itself.
346
+ * Code-only since v7.0.0 (#3402). Copy lives in the consumer's own i18n layer:
347
+ * pattern-match on `code` and resolve it against a
348
+ * `Record<FFIDConsentMergeWarning, string>` so TypeScript exhaustiveness-checks
349
+ * every literal and the dictionary can never leak `undefined`.
350
+ *
351
+ * Kept as an object rather than collapsed into a bare
352
+ * `FFIDConsentMergeWarning` alias for two reasons: consumers that followed the
353
+ * v5.5 deprecation notice already read `warning.code`, so this shape needs no
354
+ * second migration from them; and it leaves room to widen into a discriminated
355
+ * union (`{ code: 'drift_detected', mergeStrategy: 'db_wins' } | ...`) without
356
+ * another breaking change.
351
357
  */
352
358
  interface FFIDConsentMergeWarningEvent {
353
359
  code: FFIDConsentMergeWarning;
354
- /**
355
- * Human-readable copy. Defaults to the SDK's built-in Japanese copy unless
356
- * `<FFIDAnalyticsProvider mergeWarningMessages={...}>` overrides it.
357
- *
358
- * @deprecated Scheduled for removal in `@feelflow/ffid-sdk` v6.0 so that
359
- * `FFIDConsentMergeWarningEvent` becomes symmetric with
360
- * `FFIDConsentSyncResult.warning` (code-only). Consumers should
361
- * pattern-match on `code` and resolve copy in their own i18n layer.
362
- *
363
- * Migration: replace `event.message` reads with `messages[event.code]`
364
- * where `messages` is typed as
365
- * `Record<FFIDConsentMergeWarning, string>` (not `Partial<...>`) so
366
- * TypeScript exhaustiveness-checks every enum value at compile time
367
- * and the dictionary can never leak `undefined` the way an unchecked
368
- * `event.message` could in pre-v5.5 SDKs.
369
- */
370
- message: string;
371
360
  }
372
361
  /**
373
362
  * Result of a sync call surfaced to consumers — drops the wire envelope and
@@ -779,27 +768,11 @@ interface FFIDAnalyticsProviderProps {
779
768
  * suppressed by a UX dismissal.
780
769
  */
781
770
  dismissalCooldownMinutes?: number;
782
- /**
783
- * Per-locale override map for `FFIDConsentMergeWarningEvent.message`.
784
- *
785
- * The Provider derives `message` for the `onConsentChange(state, warning)`
786
- * callback from this map, falling back to `DEFAULT_MERGE_WARNING_MESSAGES`
787
- * (JP) for any missing key. Pass only the keys you need to translate —
788
- * partial overrides are merged with the defaults.
789
- *
790
- * Note: the underlying `code` (`FFIDConsentMergeWarning`) is the canonical
791
- * identifier — multi-locale consumers should prefer pattern-matching on
792
- * `warning.code` over reading `warning.message` directly. The `message`
793
- * field is `@deprecated` and scheduled for removal in v6.0; this prop is
794
- * the interim escape hatch so non-JP consumers don't have to wait for the
795
- * v6.0 major to surface localized copy.
796
- */
797
- mergeWarningMessages?: Partial<Record<FFIDConsentMergeWarning, string>>;
798
771
  /** Optional fetch override (mainly for tests). */
799
772
  fetchImpl?: typeof fetch;
800
773
  children: ReactNode;
801
774
  }
802
- declare function FFIDAnalyticsProvider({ baseUrl, serviceApiKey, getAccessToken, gaMeasurementId, gaEnabled, sentryReplay, sentry, onConsentChange, onError, autoShowBanner, dismissalCooldownMinutes, mergeWarningMessages, fetchImpl, children, }: FFIDAnalyticsProviderProps): React.JSX.Element;
775
+ declare function FFIDAnalyticsProvider({ baseUrl, serviceApiKey, getAccessToken, gaMeasurementId, gaEnabled, sentryReplay, sentry, onConsentChange, onError, autoShowBanner, dismissalCooldownMinutes, fetchImpl, children, }: FFIDAnalyticsProviderProps): React.JSX.Element;
803
776
 
804
777
  interface FFIDConsentContextValue {
805
778
  /** Current consent state. Always non-null; "not yet decided" is encoded by `hasDecided=false`. */
@@ -850,12 +823,6 @@ interface FFIDConsentContextValue {
850
823
  }
851
824
  declare const FFID_CONSENT_NOT_DECIDED_STATE: FFIDConsentState;
852
825
  declare const FFIDConsentContext: React$1.Context<FFIDConsentContextValue>;
853
- /**
854
- * Warning literal-keyed default copy for `local_state_overridden` /
855
- * `shared_device_detected` / `drift_detected`. Surfaced by the Provider via
856
- * `onConsentChange(state, warning)` per spec §5.3.
857
- */
858
- declare const DEFAULT_MERGE_WARNING_MESSAGES: Record<FFIDConsentMergeWarning, string>;
859
826
 
860
827
  /**
861
828
  * `useFFIDConsent` — primary hook for reading + updating cookie consent.
@@ -1071,4 +1038,4 @@ interface FFIDCookieLinkProps {
1071
1038
  }
1072
1039
  declare function FFIDCookieLink({ children, className, style, id, }: FFIDCookieLinkProps): React.JSX.Element;
1073
1040
 
1074
- export { FFID_CONSENT_NOT_DECIDED_STATE as $, ALL_DENIED_EXCEPT_NECESSARY as A, type FFIDConsentMergeWarning as B, CONSENT_COOKIE_MAX_AGE_SEC as C, DEFAULT_CONSENT_ERROR_MESSAGES as D, type FFIDConsentMergeWarningEvent as E, type FFIDConsentResult as F, type GetConsentMeWire as G, FFIDConsentMergeWarningSchema as H, type FFIDConsentSource as I, FFIDConsentSourceSchema as J, FFIDConsentStateSchema as K, FFIDConsentUpdateSchema as L, FFIDCookieBanner as M, type FFIDCookieBannerClassNames as N, type FFIDCookieBannerProps as O, type PostConsentWire as P, FFIDCookieLink as Q, type FFIDCookieLinkProps as R, FFIDCookiePolicySchema as S, FFIDCookieSettings as T, type FFIDCookieSettingsClassNames as U, type FFIDCookieSettingsProps as V, type FFIDInternalConsentSource as W, FFIDInternalConsentSourceSchema as X, type FFIDPublicConsentSource as Y, FFIDPublicConsentSourceSchema as Z, FFID_CONSENT_ERROR_CODES as _, type FFIDConsentState as a, type GetCategoriesWire as a0, GetCategoriesWireSchema as a1, GetConsentMeWireSchema as a2, type GetDocumentWire as a3, GetDocumentWireSchema as a4, type GtagBridge as a5, type GtagBridgeOptions as a6, type PostConsentRequest as a7, PostConsentRequestSchema as a8, PostConsentWireSchema as a9, type PostSyncRequest as aa, PostSyncRequestSchema as ab, PostSyncWireSchema as ac, PostWithdrawWireSchema as ad, type UseFFIDConsentPreferencesReturn as ae, type UseFFIDConsentReturn as af, clearConsentDismissalTimestamp as ag, clearConsentSessionMirror as ah, createGtagBridge as ai, decodeConsentCookie as aj, deleteConsentCookie as ak, encodeConsentCookie as al, mapCategoriesToGtagParams as am, readConsentCookie as an, readConsentDismissalTimestamp as ao, readConsentSessionMirror as ap, useFFIDConsent as aq, useFFIDConsentPreferences as ar, writeConsentCookie as as, writeConsentDismissalTimestamp as at, writeConsentSessionMirror as au, type FFIDConsentUpdate as b, type FFIDConsentCategories as c, type FFIDConsentSyncResult as d, type FFIDConsentCategoryMetadata as e, type FFIDCookiePolicy as f, type PostSyncWire as g, type PostWithdrawWire as h, CONSENT_COOKIE_NAME as i, CONSENT_DISMISSAL_TIMESTAMP_KEY as j, CONSENT_SESSION_STORAGE_KEY as k, COOKIE_VERSION as l, DEFAULT_MERGE_WARNING_MESSAGES as m, DeviceIdSchema as n, FFIDAnalyticsProvider as o, type FFIDAnalyticsProviderProps as p, FFIDConsentCategoriesSchema as q, type FFIDConsentCategoryCode as r, FFIDConsentCategoryCodeSchema as s, FFIDConsentCategoryMetadataSchema as t, FFIDConsentContext as u, type FFIDConsentContextValue as v, FFIDConsentError as w, type FFIDConsentErrorCode as x, type FFIDConsentMergeStrategy as y, FFIDConsentMergeStrategySchema as z };
1041
+ export { type GetCategoriesWire as $, ALL_DENIED_EXCEPT_NECESSARY as A, type FFIDConsentMergeWarningEvent as B, CONSENT_COOKIE_MAX_AGE_SEC as C, DEFAULT_CONSENT_ERROR_MESSAGES as D, FFIDConsentMergeWarningSchema as E, type FFIDConsentResult as F, type GetConsentMeWire as G, type FFIDConsentSource as H, FFIDConsentSourceSchema as I, FFIDConsentStateSchema as J, FFIDConsentUpdateSchema as K, FFIDCookieBanner as L, type FFIDCookieBannerClassNames as M, type FFIDCookieBannerProps as N, FFIDCookieLink as O, type PostConsentWire as P, type FFIDCookieLinkProps as Q, FFIDCookiePolicySchema as R, FFIDCookieSettings as S, type FFIDCookieSettingsClassNames as T, type FFIDCookieSettingsProps as U, type FFIDInternalConsentSource as V, FFIDInternalConsentSourceSchema as W, type FFIDPublicConsentSource as X, FFIDPublicConsentSourceSchema as Y, FFID_CONSENT_ERROR_CODES as Z, FFID_CONSENT_NOT_DECIDED_STATE as _, type FFIDConsentState as a, GetCategoriesWireSchema as a0, GetConsentMeWireSchema as a1, type GetDocumentWire as a2, GetDocumentWireSchema as a3, type GtagBridge as a4, type GtagBridgeOptions as a5, type PostConsentRequest as a6, PostConsentRequestSchema as a7, PostConsentWireSchema as a8, type PostSyncRequest as a9, PostSyncRequestSchema as aa, PostSyncWireSchema as ab, PostWithdrawWireSchema as ac, type UseFFIDConsentPreferencesReturn as ad, type UseFFIDConsentReturn as ae, clearConsentDismissalTimestamp as af, clearConsentSessionMirror as ag, createGtagBridge as ah, decodeConsentCookie as ai, deleteConsentCookie as aj, encodeConsentCookie as ak, mapCategoriesToGtagParams as al, readConsentCookie as am, readConsentDismissalTimestamp as an, readConsentSessionMirror as ao, useFFIDConsent as ap, useFFIDConsentPreferences as aq, writeConsentCookie as ar, writeConsentDismissalTimestamp as as, writeConsentSessionMirror as at, type FFIDConsentUpdate as b, type FFIDConsentCategories as c, type FFIDConsentSyncResult as d, type FFIDConsentCategoryMetadata as e, type FFIDCookiePolicy as f, type PostSyncWire as g, type PostWithdrawWire as h, CONSENT_COOKIE_NAME as i, CONSENT_DISMISSAL_TIMESTAMP_KEY as j, CONSENT_SESSION_STORAGE_KEY as k, COOKIE_VERSION as l, DeviceIdSchema as m, FFIDAnalyticsProvider as n, type FFIDAnalyticsProviderProps as o, FFIDConsentCategoriesSchema as p, type FFIDConsentCategoryCode as q, FFIDConsentCategoryCodeSchema as r, FFIDConsentCategoryMetadataSchema as s, FFIDConsentContext as t, type FFIDConsentContextValue as u, FFIDConsentError as v, type FFIDConsentErrorCode as w, type FFIDConsentMergeStrategy as x, FFIDConsentMergeStrategySchema as y, type FFIDConsentMergeWarning as z };