@learnorama/mozaik-sdk 0.12.3-staging.46.1 → 0.13.0-staging.48.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +25 -0
- package/dist/api/account.d.ts +1 -1
- package/dist/api/account.js.map +1 -1
- package/dist/api/admin-catalogue.d.ts +1 -1
- package/dist/api/admin-catalogue.js.map +1 -1
- package/dist/api/admin-consumption.d.ts +1 -1
- package/dist/api/admin-consumption.js.map +1 -1
- package/dist/api/admin-contracts.d.ts +1 -1
- package/dist/api/admin-contracts.js.map +1 -1
- package/dist/api/admin-desk.d.ts +1 -1
- package/dist/api/admin-desk.js.map +1 -1
- package/dist/api/admin-licenses.d.ts +1 -1
- package/dist/api/admin-licenses.js.map +1 -1
- package/dist/api/admin-partner-selections.d.ts +1 -1
- package/dist/api/admin-partner-selections.js.map +1 -1
- package/dist/api/admin-patrons.d.ts +1 -1
- package/dist/api/admin-patrons.js.map +1 -1
- package/dist/api/admin-reviews.d.ts +1 -1
- package/dist/api/admin-reviews.js.map +1 -1
- package/dist/api/admin-roles.d.ts +1 -1
- package/dist/api/admin-roles.js.map +1 -1
- package/dist/api/admin-support.d.ts +1 -1
- package/dist/api/admin-support.js.map +1 -1
- package/dist/api/admin-tenants.d.ts +1 -1
- package/dist/api/admin-tenants.js.map +1 -1
- package/dist/api/admin-tutoring.d.ts +1 -1
- package/dist/api/admin-tutoring.js.map +1 -1
- package/dist/api/auth.d.ts +1 -1
- package/dist/api/auth.js.map +1 -1
- package/dist/api/biblio-billing-webhooks.d.ts +18 -0
- package/dist/api/biblio-billing-webhooks.js +62 -0
- package/dist/api/biblio-billing-webhooks.js.map +1 -0
- package/dist/api/biblio-billing.d.ts +192 -0
- package/dist/api/biblio-billing.js +645 -0
- package/dist/api/biblio-billing.js.map +1 -0
- package/dist/api/biblio-catalogue.d.ts +1 -1
- package/dist/api/biblio-catalogue.js.map +1 -1
- package/dist/api/biblio-home.d.ts +1 -1
- package/dist/api/biblio-home.js.map +1 -1
- package/dist/api/biblio-learning-author-profiles.d.ts +108 -0
- package/dist/api/biblio-learning-author-profiles.js +331 -0
- package/dist/api/biblio-learning-author-profiles.js.map +1 -0
- package/dist/api/biblio-learning-authoring.d.ts +168 -0
- package/dist/api/biblio-learning-authoring.js +586 -0
- package/dist/api/biblio-learning-authoring.js.map +1 -0
- package/dist/api/biblio-learning-editorial.d.ts +54 -0
- package/dist/api/biblio-learning-editorial.js +149 -0
- package/dist/api/biblio-learning-editorial.js.map +1 -0
- package/dist/api/biblio-learning-feedback.d.ts +60 -0
- package/dist/api/biblio-learning-feedback.js +180 -0
- package/dist/api/biblio-learning-feedback.js.map +1 -0
- package/dist/api/biblio-learning-finance.d.ts +186 -0
- package/dist/api/biblio-learning-finance.js +622 -0
- package/dist/api/biblio-learning-finance.js.map +1 -0
- package/dist/api/biblio-learning-integrations.d.ts +60 -0
- package/dist/api/biblio-learning-integrations.js +215 -0
- package/dist/api/biblio-learning-integrations.js.map +1 -0
- package/dist/api/biblio-learning-membership.d.ts +24 -0
- package/dist/api/biblio-learning-membership.js +69 -0
- package/dist/api/biblio-learning-membership.js.map +1 -0
- package/dist/api/biblio-learning.d.ts +222 -0
- package/dist/api/biblio-learning.js +697 -0
- package/dist/api/biblio-learning.js.map +1 -0
- package/dist/api/biblio-library.d.ts +1 -1
- package/dist/api/biblio-library.js.map +1 -1
- package/dist/api/biblio-nextory.d.ts +1 -1
- package/dist/api/biblio-nextory.js.map +1 -1
- package/dist/api/biblio-press.d.ts +1 -1
- package/dist/api/biblio-press.js.map +1 -1
- package/dist/api/biblio-search.d.ts +1 -1
- package/dist/api/biblio-search.js.map +1 -1
- package/dist/api/biblio-telemetry.d.ts +1 -1
- package/dist/api/biblio-telemetry.js.map +1 -1
- package/dist/api/consumption.d.ts +1 -1
- package/dist/api/consumption.js.map +1 -1
- package/dist/api/cvs-app.d.ts +1 -1
- package/dist/api/cvs-app.js.map +1 -1
- package/dist/api/cvs-documents.d.ts +1 -1
- package/dist/api/cvs-documents.js.map +1 -1
- package/dist/api/cvs-favorites.d.ts +1 -1
- package/dist/api/cvs-favorites.js.map +1 -1
- package/dist/api/cvs-ils.d.ts +1 -1
- package/dist/api/cvs-ils.js.map +1 -1
- package/dist/api/cvs-loans.d.ts +1 -1
- package/dist/api/cvs-loans.js.map +1 -1
- package/dist/api/cvs-payments.d.ts +1 -1
- package/dist/api/cvs-payments.js.map +1 -1
- package/dist/api/cvs-streaming.d.ts +1 -1
- package/dist/api/cvs-streaming.js.map +1 -1
- package/dist/api/index.d.ts +11 -1
- package/dist/api/index.js +11 -1
- package/dist/api/partner-catalogue.d.ts +1 -1
- package/dist/api/partner-catalogue.js.map +1 -1
- package/dist/api/partner-reader.d.ts +1 -1
- package/dist/api/partner-reader.js.map +1 -1
- package/dist/api/profiles.d.ts +1 -1
- package/dist/api/profiles.js.map +1 -1
- package/dist/api/search.d.ts +1 -1
- package/dist/api/search.js.map +1 -1
- package/dist/api/tutoring-catalogue.d.ts +1 -1
- package/dist/api/tutoring-catalogue.js.map +1 -1
- package/dist/api/tutoring-chat.d.ts +1 -1
- package/dist/api/tutoring-chat.js.map +1 -1
- package/dist/api/tutoring-dispatch.d.ts +1 -1
- package/dist/api/tutoring-dispatch.js.map +1 -1
- package/dist/api/tutoring-practitioner.d.ts +1 -1
- package/dist/api/tutoring-practitioner.js.map +1 -1
- package/dist/api/tutoring-requests.d.ts +1 -1
- package/dist/api/tutoring-requests.js.map +1 -1
- package/dist/chunks/client2.d.ts +1 -1
- package/dist/chunks/connection.d.ts +1 -1
- package/dist/chunks/index.d.ts +10062 -3487
- package/dist/index.d.ts +3 -3
- package/dist/index.js +3 -3
- package/dist/index.js.map +1 -1
- package/dist/models.d.ts +2 -2
- package/dist/models.js +329 -1
- package/dist/models.js.map +1 -1
- package/dist/react/account.d.ts +1 -1
- package/dist/react/account.js +1 -1
- package/dist/react/account.js.map +1 -1
- package/dist/react/admin-catalogue.d.ts +1 -1
- package/dist/react/admin-catalogue.js +1 -1
- package/dist/react/admin-catalogue.js.map +1 -1
- package/dist/react/admin-consumption.d.ts +1 -1
- package/dist/react/admin-consumption.js +1 -1
- package/dist/react/admin-consumption.js.map +1 -1
- package/dist/react/admin-contracts.d.ts +1 -1
- package/dist/react/admin-contracts.js +1 -1
- package/dist/react/admin-contracts.js.map +1 -1
- package/dist/react/admin-desk.d.ts +1 -1
- package/dist/react/admin-desk.js +1 -1
- package/dist/react/admin-desk.js.map +1 -1
- package/dist/react/admin-licenses.d.ts +1 -1
- package/dist/react/admin-licenses.js +1 -1
- package/dist/react/admin-licenses.js.map +1 -1
- package/dist/react/admin-partner-selections.d.ts +1 -1
- package/dist/react/admin-partner-selections.js +1 -1
- package/dist/react/admin-partner-selections.js.map +1 -1
- package/dist/react/admin-patrons.d.ts +1 -1
- package/dist/react/admin-patrons.js +1 -1
- package/dist/react/admin-patrons.js.map +1 -1
- package/dist/react/admin-reviews.d.ts +1 -1
- package/dist/react/admin-reviews.js +1 -1
- package/dist/react/admin-reviews.js.map +1 -1
- package/dist/react/admin-roles.d.ts +1 -1
- package/dist/react/admin-roles.js +1 -1
- package/dist/react/admin-roles.js.map +1 -1
- package/dist/react/admin-support.d.ts +1 -1
- package/dist/react/admin-support.js +1 -1
- package/dist/react/admin-support.js.map +1 -1
- package/dist/react/admin-tenants.d.ts +1 -1
- package/dist/react/admin-tenants.js +1 -1
- package/dist/react/admin-tenants.js.map +1 -1
- package/dist/react/admin-tutoring.d.ts +1 -1
- package/dist/react/admin-tutoring.js +1 -1
- package/dist/react/admin-tutoring.js.map +1 -1
- package/dist/react/auth.d.ts +1 -1
- package/dist/react/auth.js +1 -1
- package/dist/react/auth.js.map +1 -1
- package/dist/react/biblio-billing-webhooks.d.ts +56 -0
- package/dist/react/biblio-billing-webhooks.js +126 -0
- package/dist/react/biblio-billing-webhooks.js.map +1 -0
- package/dist/react/biblio-billing.d.ts +876 -0
- package/dist/react/biblio-billing.js +1491 -0
- package/dist/react/biblio-billing.js.map +1 -0
- package/dist/react/biblio-catalogue.d.ts +1 -1
- package/dist/react/biblio-catalogue.js +1 -1
- package/dist/react/biblio-catalogue.js.map +1 -1
- package/dist/react/biblio-home.d.ts +1 -1
- package/dist/react/biblio-home.js +1 -1
- package/dist/react/biblio-home.js.map +1 -1
- package/dist/react/biblio-learning-author-profiles.d.ts +513 -0
- package/dist/react/biblio-learning-author-profiles.js +795 -0
- package/dist/react/biblio-learning-author-profiles.js.map +1 -0
- package/dist/react/biblio-learning-authoring.d.ts +745 -0
- package/dist/react/biblio-learning-authoring.js +1335 -0
- package/dist/react/biblio-learning-authoring.js.map +1 -0
- package/dist/react/biblio-learning-editorial.d.ts +264 -0
- package/dist/react/biblio-learning-editorial.js +371 -0
- package/dist/react/biblio-learning-editorial.js.map +1 -0
- package/dist/react/biblio-learning-feedback.d.ts +280 -0
- package/dist/react/biblio-learning-feedback.js +433 -0
- package/dist/react/biblio-learning-feedback.js.map +1 -0
- package/dist/react/biblio-learning-finance.d.ts +868 -0
- package/dist/react/biblio-learning-finance.js +1439 -0
- package/dist/react/biblio-learning-finance.js.map +1 -0
- package/dist/react/biblio-learning-integrations.d.ts +237 -0
- package/dist/react/biblio-learning-integrations.js +483 -0
- package/dist/react/biblio-learning-integrations.js.map +1 -0
- package/dist/react/biblio-learning-membership.d.ts +99 -0
- package/dist/react/biblio-learning-membership.js +165 -0
- package/dist/react/biblio-learning-membership.js.map +1 -0
- package/dist/react/biblio-learning.d.ts +1047 -0
- package/dist/react/biblio-learning.js +1667 -0
- package/dist/react/biblio-learning.js.map +1 -0
- package/dist/react/biblio-library.d.ts +1 -1
- package/dist/react/biblio-library.js +1 -1
- package/dist/react/biblio-library.js.map +1 -1
- package/dist/react/biblio-nextory.d.ts +1 -1
- package/dist/react/biblio-nextory.js +1 -1
- package/dist/react/biblio-nextory.js.map +1 -1
- package/dist/react/biblio-press.d.ts +1 -1
- package/dist/react/biblio-press.js +1 -1
- package/dist/react/biblio-press.js.map +1 -1
- package/dist/react/biblio-search.d.ts +1 -1
- package/dist/react/biblio-search.js +1 -1
- package/dist/react/biblio-search.js.map +1 -1
- package/dist/react/biblio-telemetry.d.ts +1 -1
- package/dist/react/biblio-telemetry.js +1 -1
- package/dist/react/biblio-telemetry.js.map +1 -1
- package/dist/react/chat.d.ts +1 -1
- package/dist/react/consumption.d.ts +1 -1
- package/dist/react/consumption.js +1 -1
- package/dist/react/consumption.js.map +1 -1
- package/dist/react/cvs-app.d.ts +1 -1
- package/dist/react/cvs-app.js +1 -1
- package/dist/react/cvs-app.js.map +1 -1
- package/dist/react/cvs-documents.d.ts +1 -1
- package/dist/react/cvs-documents.js +1 -1
- package/dist/react/cvs-documents.js.map +1 -1
- package/dist/react/cvs-favorites.d.ts +1 -1
- package/dist/react/cvs-favorites.js +1 -1
- package/dist/react/cvs-favorites.js.map +1 -1
- package/dist/react/cvs-ils.d.ts +1 -1
- package/dist/react/cvs-ils.js +1 -1
- package/dist/react/cvs-ils.js.map +1 -1
- package/dist/react/cvs-loans.d.ts +1 -1
- package/dist/react/cvs-loans.js +1 -1
- package/dist/react/cvs-loans.js.map +1 -1
- package/dist/react/cvs-payments.d.ts +1 -1
- package/dist/react/cvs-payments.js +1 -1
- package/dist/react/cvs-payments.js.map +1 -1
- package/dist/react/cvs-streaming.d.ts +1 -1
- package/dist/react/cvs-streaming.js +1 -1
- package/dist/react/cvs-streaming.js.map +1 -1
- package/dist/react/index.d.ts +11 -1
- package/dist/react/index.js +11 -1
- package/dist/react/partner-catalogue.d.ts +1 -1
- package/dist/react/partner-catalogue.js +1 -1
- package/dist/react/partner-catalogue.js.map +1 -1
- package/dist/react/partner-reader.d.ts +1 -1
- package/dist/react/partner-reader.js +1 -1
- package/dist/react/partner-reader.js.map +1 -1
- package/dist/react/profiles.d.ts +1 -1
- package/dist/react/profiles.js +1 -1
- package/dist/react/profiles.js.map +1 -1
- package/dist/react/search.d.ts +1 -1
- package/dist/react/search.js +1 -1
- package/dist/react/search.js.map +1 -1
- package/dist/react/tutoring-catalogue.d.ts +1 -1
- package/dist/react/tutoring-catalogue.js +1 -1
- package/dist/react/tutoring-catalogue.js.map +1 -1
- package/dist/react/tutoring-chat.d.ts +1 -1
- package/dist/react/tutoring-chat.js +1 -1
- package/dist/react/tutoring-chat.js.map +1 -1
- package/dist/react/tutoring-dispatch.d.ts +1 -1
- package/dist/react/tutoring-dispatch.js +1 -1
- package/dist/react/tutoring-dispatch.js.map +1 -1
- package/dist/react/tutoring-practitioner.d.ts +1 -1
- package/dist/react/tutoring-practitioner.js +1 -1
- package/dist/react/tutoring-practitioner.js.map +1 -1
- package/dist/react/tutoring-requests.d.ts +1 -1
- package/dist/react/tutoring-requests.js +1 -1
- package/dist/react/tutoring-requests.js.map +1 -1
- package/package.json +7 -7
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"biblio-billing.js","names":[],"sources":["../../src/react/biblio-billing/biblio-billing.ts"],"sourcesContent":["/**\n * Generated by orval 🍺\n * Do not edit manually.\n * Mozaik backend\n * Four products behind one API — Biblio, Médiathèques, the partner catalogues (Nextory and YouScribe) and Prof Express. Authentication is Keycloak SSO only, once, for all of them: see the **auth** section below for the browser flow and the three failure modes.\n * OpenAPI spec version: 0.13.0\n */\nimport {\n useMutation,\n useQuery\n} from '@tanstack/react-query';\nimport type {\n DataTag,\n DefinedInitialDataOptions,\n DefinedUseQueryResult,\n MutationFunction,\n QueryClient,\n QueryFunction,\n QueryKey,\n UndefinedInitialDataOptions,\n UseMutationOptions,\n UseMutationResult,\n UseQueryOptions,\n UseQueryResult\n} from '@tanstack/react-query';\n\nimport type {\n BillingCancelWrite,\n BillingCancellationFeedbackPage,\n BillingCancellationFeedbackParams,\n BillingCheckoutRead,\n BillingCheckoutSubmitWrite,\n BillingClientTokenRead,\n BillingClientTokenWrite,\n BillingIdentityRead,\n BillingIdentityWrite,\n BillingListProductsParams,\n BillingListPromotionsParams,\n BillingListSubscriptionsParams,\n BillingListTransactionsParams,\n BillingPaymentMethodWrite,\n BillingProductAvailabilityWrite,\n BillingProductPage,\n BillingProductRead,\n BillingProductWrite,\n BillingPromotionGeneratorsParams,\n BillingPromotionRedemptionsParams,\n BillingProviderProductWrite,\n BillingQuoteWrite,\n BillingSubscriptionHistoryPage,\n BillingSubscriptionHistoryParams,\n BillingSubscriptionPage,\n BillingSubscriptionRead,\n BillingTransactionPage,\n BillingTransactionRead,\n HTTPExceptionResponse,\n PromotionCapacityRead,\n PromotionCodeListRead,\n PromotionCodeRead,\n PromotionCreatedRead,\n PromotionExportRead,\n PromotionExportWrite,\n PromotionGeneratorPage,\n PromotionGeneratorRead,\n PromotionGeneratorWrite,\n PromotionPage,\n PromotionRedeemWrite,\n PromotionRedemptionHistoryPage,\n PromotionRedemptionRead,\n PromotionRevealWrite,\n PromotionWrite,\n ValidationErrorResponse\n} from '../../models';\n\nimport { request } from '../../client';\nimport type { ErrorType , BodyType } from '../../client';\n\n\ntype SecondParameter<T extends (...args: never) => unknown> = Parameters<T>[1];\n\n\n\nconst withQueryKey = <T extends object, K>(query: T, queryKey: K): T & { queryKey: K } => {\n const result = { queryKey } as T & { queryKey: K };\n for (const key of Object.keys(query)) {\n // The explicit queryKey always wins, matching the previous\n // `{ ...query, queryKey }` spread where it was set last.\n if (key === 'queryKey') continue;\n Object.defineProperty(result, key, {\n enumerable: true,\n configurable: true,\n get: () => (query as Record<string, unknown>)[key],\n });\n }\n return result;\n};\n\nexport const getBillingCreateProductUrl = (catalogueId: number,) => {\n\n\n\n\n return `/billing/catalogues/${catalogueId}/products`\n}\n\n/**\n * A global commercial operator creates an offer and its server-owned net price/tax. New offers default to inactive. Fixed offers need accessMonths or an institutional template; recurring offers cannot use a template. Retention offers require the customer's dated agreement. Requires high-assurance authentication.\n * @summary Create a catalogue billing offer\n */\nexport const billingCreateProduct = async (catalogueId: number,\n billingProductWrite: BillingProductWrite, options?: Parameters<typeof request>[1]): Promise<BillingProductRead> => {\n\n const getHeaders = (h?: NonNullable<RequestInit['headers']>): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Symbol.iterator in h) {\n return Object.fromEntries(\n Array.from(h as Iterable<Iterable<string>>, (entry) => Array.from(entry) as [string, string]),\n );\n }\n const headers: Record<string, string | readonly string[]> = {};\n for (const [name, value] of Object.entries<string | readonly string[] | undefined>(h)) {\n if (value !== undefined) headers[name] = value;\n }\n return headers;\n };\nreturn request<BillingProductRead>(getBillingCreateProductUrl(catalogueId),\n {\n ...options,\n method: 'POST',\n headers: { 'Content-Type': 'application/json', ...getHeaders(options?.headers) },\n body: JSON.stringify(billingProductWrite)\n }\n);}\n\n\n\n\n\nexport const getBillingCreateProductMutationKey = () => ['billingCreateProduct'] as const;\n\nexport const getBillingCreateProductMutationOptions = <TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>,\n TContext = unknown>(options?: { mutation?:UseMutationOptions<Awaited<ReturnType<typeof billingCreateProduct>>, TError,BillingCreateProductMutationVariables, TContext>, request?: SecondParameter<typeof request>}\n): UseMutationOptions<Awaited<ReturnType<typeof billingCreateProduct>>, TError,BillingCreateProductMutationVariables, TContext> => {\n\nconst mutationKey = getBillingCreateProductMutationKey();\nconst {mutation: mutationOptions, request: requestOptions} = options ?\n options.mutation && 'mutationKey' in options.mutation && options.mutation.mutationKey ?\n options\n : {...options, mutation: {...options.mutation, mutationKey}}\n : {mutation: { mutationKey, }, request: undefined};\n\n\n\n\n const mutationFn: MutationFunction<Awaited<ReturnType<typeof billingCreateProduct>>, BillingCreateProductMutationVariables> = (props) => {\n const {catalogueId,data} = props ?? {};\n\n return billingCreateProduct(catalogueId,data,requestOptions)\n }\n\n\n\n\n\n\n return { mutationFn, ...mutationOptions }}\n\n export type BillingCreateProductMutationResult = NonNullable<Awaited<ReturnType<typeof billingCreateProduct>>>\n export type BillingCreateProductMutationBody = BodyType<BillingProductWrite>\n export type BillingCreateProductMutationError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>\n export type BillingCreateProductMutationVariables = {catalogueId: number;data: BodyType<BillingProductWrite>}\n\n /**\n * @summary Create a catalogue billing offer\n */\nexport const useBillingCreateProduct = <TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>,\n TContext = unknown>(options?: { mutation?:UseMutationOptions<Awaited<ReturnType<typeof billingCreateProduct>>, TError,BillingCreateProductMutationVariables, TContext>, request?: SecondParameter<typeof request>}\n , queryClient?: QueryClient): UseMutationResult<\n Awaited<ReturnType<typeof billingCreateProduct>>,\n TError,\n BillingCreateProductMutationVariables,\n TContext\n > => {\n return useMutation(getBillingCreateProductMutationOptions(options), queryClient);\n }\n export const getBillingGeneratePromotionsUrl = (catalogueId: number,) => {\n\n\n\n\n return `/billing/catalogues/${catalogueId}/promotion-batches`\n}\n\n/**\n * Create 1–500 independent rules and encrypted distribution codes atomically from one reviewed template. Each code is the optional prefix followed by 20 unambiguous characters; rule.code must be null. rule.quantity is stock per generated rule, not the number of codes. Requires global commercial authority. Requires high-assurance authentication.\n * @summary Generate a bounded promotion-code batch\n */\nexport const billingGeneratePromotions = async (catalogueId: number,\n promotionGeneratorWrite: PromotionGeneratorWrite, options?: Parameters<typeof request>[1]): Promise<PromotionCodeListRead> => {\n\n const getHeaders = (h?: NonNullable<RequestInit['headers']>): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Symbol.iterator in h) {\n return Object.fromEntries(\n Array.from(h as Iterable<Iterable<string>>, (entry) => Array.from(entry) as [string, string]),\n );\n }\n const headers: Record<string, string | readonly string[]> = {};\n for (const [name, value] of Object.entries<string | readonly string[] | undefined>(h)) {\n if (value !== undefined) headers[name] = value;\n }\n return headers;\n };\nreturn request<PromotionCodeListRead>(getBillingGeneratePromotionsUrl(catalogueId),\n {\n ...options,\n method: 'POST',\n headers: { 'Content-Type': 'application/json', ...getHeaders(options?.headers) },\n body: JSON.stringify(promotionGeneratorWrite)\n }\n);}\n\n\n\n\n\nexport const getBillingGeneratePromotionsMutationKey = () => ['billingGeneratePromotions'] as const;\n\nexport const getBillingGeneratePromotionsMutationOptions = <TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>,\n TContext = unknown>(options?: { mutation?:UseMutationOptions<Awaited<ReturnType<typeof billingGeneratePromotions>>, TError,BillingGeneratePromotionsMutationVariables, TContext>, request?: SecondParameter<typeof request>}\n): UseMutationOptions<Awaited<ReturnType<typeof billingGeneratePromotions>>, TError,BillingGeneratePromotionsMutationVariables, TContext> => {\n\nconst mutationKey = getBillingGeneratePromotionsMutationKey();\nconst {mutation: mutationOptions, request: requestOptions} = options ?\n options.mutation && 'mutationKey' in options.mutation && options.mutation.mutationKey ?\n options\n : {...options, mutation: {...options.mutation, mutationKey}}\n : {mutation: { mutationKey, }, request: undefined};\n\n\n\n\n const mutationFn: MutationFunction<Awaited<ReturnType<typeof billingGeneratePromotions>>, BillingGeneratePromotionsMutationVariables> = (props) => {\n const {catalogueId,data} = props ?? {};\n\n return billingGeneratePromotions(catalogueId,data,requestOptions)\n }\n\n\n\n\n\n\n return { mutationFn, ...mutationOptions }}\n\n export type BillingGeneratePromotionsMutationResult = NonNullable<Awaited<ReturnType<typeof billingGeneratePromotions>>>\n export type BillingGeneratePromotionsMutationBody = BodyType<PromotionGeneratorWrite>\n export type BillingGeneratePromotionsMutationError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>\n export type BillingGeneratePromotionsMutationVariables = {catalogueId: number;data: BodyType<PromotionGeneratorWrite>}\n\n /**\n * @summary Generate a bounded promotion-code batch\n */\nexport const useBillingGeneratePromotions = <TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>,\n TContext = unknown>(options?: { mutation?:UseMutationOptions<Awaited<ReturnType<typeof billingGeneratePromotions>>, TError,BillingGeneratePromotionsMutationVariables, TContext>, request?: SecondParameter<typeof request>}\n , queryClient?: QueryClient): UseMutationResult<\n Awaited<ReturnType<typeof billingGeneratePromotions>>,\n TError,\n BillingGeneratePromotionsMutationVariables,\n TContext\n > => {\n return useMutation(getBillingGeneratePromotionsMutationOptions(options), queryClient);\n }\n export const getBillingPromotionGeneratorsUrl = (catalogueId: number,\n params?: BillingPromotionGeneratorsParams,) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? 'null' : String(value))\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0 ? `/billing/catalogues/${catalogueId}/promotion-generators?${stringifiedParams}` : `/billing/catalogues/${catalogueId}/promotion-generators`\n}\n\n/**\n * Global commercial operators list safe generator definitions, newest first. Includes historical sourceMask and partial rule fields when known; codes and private source metadata require a separate audited export.\n * @summary List catalogue promotion generators\n */\nexport const billingPromotionGenerators = async (catalogueId: number,\n params?: BillingPromotionGeneratorsParams, options?: Parameters<typeof request>[1]): Promise<PromotionGeneratorPage> => {\n\n return request<PromotionGeneratorPage>(getBillingPromotionGeneratorsUrl(catalogueId,params),\n {\n ...options,\n method: 'GET'\n\n\n }\n);}\n\n\n\n\n\nexport const getBillingPromotionGeneratorsQueryKey = (catalogueId: number,\n params?: BillingPromotionGeneratorsParams,) => {\n return [\n `/billing/catalogues/${catalogueId}/promotion-generators`, ...(params ? [params] : [])\n ] as const;\n }\n\n\nexport const getBillingPromotionGeneratorsQueryOptions = <TData = Awaited<ReturnType<typeof billingPromotionGenerators>>, TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>>(catalogueId: number,\n params?: BillingPromotionGeneratorsParams, options?: { query?:Partial<UseQueryOptions<Awaited<ReturnType<typeof billingPromotionGenerators>>, TError, TData>>, request?: SecondParameter<typeof request>}\n) => {\n\nconst {query: queryOptions, request: requestOptions} = options ?? {};\n\n const queryKey = queryOptions?.queryKey ?? getBillingPromotionGeneratorsQueryKey(catalogueId,params);\n\n\n\n const queryFn: QueryFunction<Awaited<ReturnType<typeof billingPromotionGenerators>>> = ({ signal }) => billingPromotionGenerators(catalogueId,params, { signal, ...requestOptions });\n\n\n\n\n\n return { queryKey, queryFn, enabled: catalogueId !== null && catalogueId !== undefined, ...queryOptions} as UseQueryOptions<Awaited<ReturnType<typeof billingPromotionGenerators>>, TError, TData> & { queryKey: DataTag<QueryKey, TData, TError> }\n}\n\nexport type BillingPromotionGeneratorsQueryResult = NonNullable<Awaited<ReturnType<typeof billingPromotionGenerators>>>\nexport type BillingPromotionGeneratorsQueryError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>\n\n\nexport function useBillingPromotionGenerators<TData = Awaited<ReturnType<typeof billingPromotionGenerators>>, TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>>(\n catalogueId: number,\n params: undefined | BillingPromotionGeneratorsParams, options: { query:Partial<UseQueryOptions<Awaited<ReturnType<typeof billingPromotionGenerators>>, TError, TData>> & Pick<\n DefinedInitialDataOptions<\n Awaited<ReturnType<typeof billingPromotionGenerators>>,\n TError,\n Awaited<ReturnType<typeof billingPromotionGenerators>>\n > , 'initialData'\n >, request?: SecondParameter<typeof request>}\n , queryClient?: QueryClient\n ): DefinedUseQueryResult<TData, TError> & { queryKey: DataTag<QueryKey, TData, TError> }\nexport function useBillingPromotionGenerators<TData = Awaited<ReturnType<typeof billingPromotionGenerators>>, TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>>(\n catalogueId: number,\n params?: BillingPromotionGeneratorsParams, options?: { query?:Partial<UseQueryOptions<Awaited<ReturnType<typeof billingPromotionGenerators>>, TError, TData>> & Pick<\n UndefinedInitialDataOptions<\n Awaited<ReturnType<typeof billingPromotionGenerators>>,\n TError,\n Awaited<ReturnType<typeof billingPromotionGenerators>>\n > , 'initialData'\n >, request?: SecondParameter<typeof request>}\n , queryClient?: QueryClient\n ): UseQueryResult<TData, TError> & { queryKey: DataTag<QueryKey, TData, TError> }\nexport function useBillingPromotionGenerators<TData = Awaited<ReturnType<typeof billingPromotionGenerators>>, TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>>(\n catalogueId: number,\n params?: BillingPromotionGeneratorsParams, options?: { query?:Partial<UseQueryOptions<Awaited<ReturnType<typeof billingPromotionGenerators>>, TError, TData>>, request?: SecondParameter<typeof request>}\n , queryClient?: QueryClient\n ): UseQueryResult<TData, TError> & { queryKey: DataTag<QueryKey, TData, TError> }\n/**\n * @summary List catalogue promotion generators\n */\n\nexport function useBillingPromotionGenerators<TData = Awaited<ReturnType<typeof billingPromotionGenerators>>, TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>>(\n catalogueId: number,\n params?: BillingPromotionGeneratorsParams, options?: { query?:Partial<UseQueryOptions<Awaited<ReturnType<typeof billingPromotionGenerators>>, TError, TData>>, request?: SecondParameter<typeof request>}\n , queryClient?: QueryClient\n ): UseQueryResult<TData, TError> & { queryKey: DataTag<QueryKey, TData, TError> } {\n\n const queryOptions = getBillingPromotionGeneratorsQueryOptions(catalogueId,params,options)\n\n const query = useQuery(queryOptions, queryClient) as UseQueryResult<TData, TError> & { queryKey: DataTag<QueryKey, TData, TError> };\n\n return withQueryKey(query, queryOptions.queryKey);\n}\n\n\n\n\n\n\nexport const getBillingListPromotionsUrl = (catalogueId: number,\n params?: BillingListPromotionsParams,) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? 'null' : String(value))\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0 ? `/billing/catalogues/${catalogueId}/promotions?${stringifiedParams}` : `/billing/catalogues/${catalogueId}/promotions`\n}\n\n/**\n * Catalogue finance operators list rule metadata, including inactive rules, ordered by promotion ID. Codes are deliberately omitted; explicit audited reveal or export is required to distribute codes.\n * @summary List catalogue promotion rules\n */\nexport const billingListPromotions = async (catalogueId: number,\n params?: BillingListPromotionsParams, options?: Parameters<typeof request>[1]): Promise<PromotionPage> => {\n\n return request<PromotionPage>(getBillingListPromotionsUrl(catalogueId,params),\n {\n ...options,\n method: 'GET'\n\n\n }\n);}\n\n\n\n\n\nexport const getBillingListPromotionsQueryKey = (catalogueId: number,\n params?: BillingListPromotionsParams,) => {\n return [\n `/billing/catalogues/${catalogueId}/promotions`, ...(params ? [params] : [])\n ] as const;\n }\n\n\nexport const getBillingListPromotionsQueryOptions = <TData = Awaited<ReturnType<typeof billingListPromotions>>, TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>>(catalogueId: number,\n params?: BillingListPromotionsParams, options?: { query?:Partial<UseQueryOptions<Awaited<ReturnType<typeof billingListPromotions>>, TError, TData>>, request?: SecondParameter<typeof request>}\n) => {\n\nconst {query: queryOptions, request: requestOptions} = options ?? {};\n\n const queryKey = queryOptions?.queryKey ?? getBillingListPromotionsQueryKey(catalogueId,params);\n\n\n\n const queryFn: QueryFunction<Awaited<ReturnType<typeof billingListPromotions>>> = ({ signal }) => billingListPromotions(catalogueId,params, { signal, ...requestOptions });\n\n\n\n\n\n return { queryKey, queryFn, enabled: catalogueId !== null && catalogueId !== undefined, ...queryOptions} as UseQueryOptions<Awaited<ReturnType<typeof billingListPromotions>>, TError, TData> & { queryKey: DataTag<QueryKey, TData, TError> }\n}\n\nexport type BillingListPromotionsQueryResult = NonNullable<Awaited<ReturnType<typeof billingListPromotions>>>\nexport type BillingListPromotionsQueryError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>\n\n\nexport function useBillingListPromotions<TData = Awaited<ReturnType<typeof billingListPromotions>>, TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>>(\n catalogueId: number,\n params: undefined | BillingListPromotionsParams, options: { query:Partial<UseQueryOptions<Awaited<ReturnType<typeof billingListPromotions>>, TError, TData>> & Pick<\n DefinedInitialDataOptions<\n Awaited<ReturnType<typeof billingListPromotions>>,\n TError,\n Awaited<ReturnType<typeof billingListPromotions>>\n > , 'initialData'\n >, request?: SecondParameter<typeof request>}\n , queryClient?: QueryClient\n ): DefinedUseQueryResult<TData, TError> & { queryKey: DataTag<QueryKey, TData, TError> }\nexport function useBillingListPromotions<TData = Awaited<ReturnType<typeof billingListPromotions>>, TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>>(\n catalogueId: number,\n params?: BillingListPromotionsParams, options?: { query?:Partial<UseQueryOptions<Awaited<ReturnType<typeof billingListPromotions>>, TError, TData>> & Pick<\n UndefinedInitialDataOptions<\n Awaited<ReturnType<typeof billingListPromotions>>,\n TError,\n Awaited<ReturnType<typeof billingListPromotions>>\n > , 'initialData'\n >, request?: SecondParameter<typeof request>}\n , queryClient?: QueryClient\n ): UseQueryResult<TData, TError> & { queryKey: DataTag<QueryKey, TData, TError> }\nexport function useBillingListPromotions<TData = Awaited<ReturnType<typeof billingListPromotions>>, TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>>(\n catalogueId: number,\n params?: BillingListPromotionsParams, options?: { query?:Partial<UseQueryOptions<Awaited<ReturnType<typeof billingListPromotions>>, TError, TData>>, request?: SecondParameter<typeof request>}\n , queryClient?: QueryClient\n ): UseQueryResult<TData, TError> & { queryKey: DataTag<QueryKey, TData, TError> }\n/**\n * @summary List catalogue promotion rules\n */\n\nexport function useBillingListPromotions<TData = Awaited<ReturnType<typeof billingListPromotions>>, TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>>(\n catalogueId: number,\n params?: BillingListPromotionsParams, options?: { query?:Partial<UseQueryOptions<Awaited<ReturnType<typeof billingListPromotions>>, TError, TData>>, request?: SecondParameter<typeof request>}\n , queryClient?: QueryClient\n ): UseQueryResult<TData, TError> & { queryKey: DataTag<QueryKey, TData, TError> } {\n\n const queryOptions = getBillingListPromotionsQueryOptions(catalogueId,params,options)\n\n const query = useQuery(queryOptions, queryClient) as UseQueryResult<TData, TError> & { queryKey: DataTag<QueryKey, TData, TError> };\n\n return withQueryKey(query, queryOptions.queryKey);\n}\n\n\n\n\n\n\nexport const getBillingCreatePromotionUrl = (catalogueId: number,) => {\n\n\n\n\n return `/billing/catalogues/${catalogueId}/promotions`\n}\n\n/**\n * A global commercial operator creates bounded promotion stock for a catalogue. Discounts apply to explicit checkouts; benefits without payment-method requirements can be redeemed directly. Null code generates three groups of six unambiguous characters. Explicit codes retain their display form; lookup uses NFKC, trim and casefold normalization. Targets must belong to the catalogue. Requires high-assurance authentication.\n * @summary Create a discount or access benefit\n */\nexport const billingCreatePromotion = async (catalogueId: number,\n promotionWrite: PromotionWrite, options?: Parameters<typeof request>[1]): Promise<PromotionCreatedRead> => {\n\n const getHeaders = (h?: NonNullable<RequestInit['headers']>): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Symbol.iterator in h) {\n return Object.fromEntries(\n Array.from(h as Iterable<Iterable<string>>, (entry) => Array.from(entry) as [string, string]),\n );\n }\n const headers: Record<string, string | readonly string[]> = {};\n for (const [name, value] of Object.entries<string | readonly string[] | undefined>(h)) {\n if (value !== undefined) headers[name] = value;\n }\n return headers;\n };\nreturn request<PromotionCreatedRead>(getBillingCreatePromotionUrl(catalogueId),\n {\n ...options,\n method: 'POST',\n headers: { 'Content-Type': 'application/json', ...getHeaders(options?.headers) },\n body: JSON.stringify(promotionWrite)\n }\n);}\n\n\n\n\n\nexport const getBillingCreatePromotionMutationKey = () => ['billingCreatePromotion'] as const;\n\nexport const getBillingCreatePromotionMutationOptions = <TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>,\n TContext = unknown>(options?: { mutation?:UseMutationOptions<Awaited<ReturnType<typeof billingCreatePromotion>>, TError,BillingCreatePromotionMutationVariables, TContext>, request?: SecondParameter<typeof request>}\n): UseMutationOptions<Awaited<ReturnType<typeof billingCreatePromotion>>, TError,BillingCreatePromotionMutationVariables, TContext> => {\n\nconst mutationKey = getBillingCreatePromotionMutationKey();\nconst {mutation: mutationOptions, request: requestOptions} = options ?\n options.mutation && 'mutationKey' in options.mutation && options.mutation.mutationKey ?\n options\n : {...options, mutation: {...options.mutation, mutationKey}}\n : {mutation: { mutationKey, }, request: undefined};\n\n\n\n\n const mutationFn: MutationFunction<Awaited<ReturnType<typeof billingCreatePromotion>>, BillingCreatePromotionMutationVariables> = (props) => {\n const {catalogueId,data} = props ?? {};\n\n return billingCreatePromotion(catalogueId,data,requestOptions)\n }\n\n\n\n\n\n\n return { mutationFn, ...mutationOptions }}\n\n export type BillingCreatePromotionMutationResult = NonNullable<Awaited<ReturnType<typeof billingCreatePromotion>>>\n export type BillingCreatePromotionMutationBody = BodyType<PromotionWrite>\n export type BillingCreatePromotionMutationError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>\n export type BillingCreatePromotionMutationVariables = {catalogueId: number;data: BodyType<PromotionWrite>}\n\n /**\n * @summary Create a discount or access benefit\n */\nexport const useBillingCreatePromotion = <TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>,\n TContext = unknown>(options?: { mutation?:UseMutationOptions<Awaited<ReturnType<typeof billingCreatePromotion>>, TError,BillingCreatePromotionMutationVariables, TContext>, request?: SecondParameter<typeof request>}\n , queryClient?: QueryClient): UseMutationResult<\n Awaited<ReturnType<typeof billingCreatePromotion>>,\n TError,\n BillingCreatePromotionMutationVariables,\n TContext\n > => {\n return useMutation(getBillingCreatePromotionMutationOptions(options), queryClient);\n }\n export const getBillingExportPromotionCodesUrl = (catalogueId: number,) => {\n\n\n\n\n return `/billing/catalogues/${catalogueId}/promotions/export`\n}\n\n/**\n * Global commercial operators decrypt selected catalogue codes in one audited transaction. Supply unique promotionIds and a reason; all IDs must belong to the selected catalogue or the entire export is refused. The JSON data is ordered by promotion ID. Responses are private, no-store. Requires high-assurance authentication.\n * @summary Export selected promotion codes with an audit reason\n */\nexport const billingExportPromotionCodes = async (catalogueId: number,\n promotionExportWrite: PromotionExportWrite, options?: Parameters<typeof request>[1]): Promise<PromotionExportRead> => {\n\n const getHeaders = (h?: NonNullable<RequestInit['headers']>): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Symbol.iterator in h) {\n return Object.fromEntries(\n Array.from(h as Iterable<Iterable<string>>, (entry) => Array.from(entry) as [string, string]),\n );\n }\n const headers: Record<string, string | readonly string[]> = {};\n for (const [name, value] of Object.entries<string | readonly string[] | undefined>(h)) {\n if (value !== undefined) headers[name] = value;\n }\n return headers;\n };\nreturn request<PromotionExportRead>(getBillingExportPromotionCodesUrl(catalogueId),\n {\n ...options,\n method: 'POST',\n headers: { 'Content-Type': 'application/json', ...getHeaders(options?.headers) },\n body: JSON.stringify(promotionExportWrite)\n }\n);}\n\n\n\n\n\nexport const getBillingExportPromotionCodesMutationKey = () => ['billingExportPromotionCodes'] as const;\n\nexport const getBillingExportPromotionCodesMutationOptions = <TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>,\n TContext = unknown>(options?: { mutation?:UseMutationOptions<Awaited<ReturnType<typeof billingExportPromotionCodes>>, TError,BillingExportPromotionCodesMutationVariables, TContext>, request?: SecondParameter<typeof request>}\n): UseMutationOptions<Awaited<ReturnType<typeof billingExportPromotionCodes>>, TError,BillingExportPromotionCodesMutationVariables, TContext> => {\n\nconst mutationKey = getBillingExportPromotionCodesMutationKey();\nconst {mutation: mutationOptions, request: requestOptions} = options ?\n options.mutation && 'mutationKey' in options.mutation && options.mutation.mutationKey ?\n options\n : {...options, mutation: {...options.mutation, mutationKey}}\n : {mutation: { mutationKey, }, request: undefined};\n\n\n\n\n const mutationFn: MutationFunction<Awaited<ReturnType<typeof billingExportPromotionCodes>>, BillingExportPromotionCodesMutationVariables> = (props) => {\n const {catalogueId,data} = props ?? {};\n\n return billingExportPromotionCodes(catalogueId,data,requestOptions)\n }\n\n\n\n\n\n\n return { mutationFn, ...mutationOptions }}\n\n export type BillingExportPromotionCodesMutationResult = NonNullable<Awaited<ReturnType<typeof billingExportPromotionCodes>>>\n export type BillingExportPromotionCodesMutationBody = BodyType<PromotionExportWrite>\n export type BillingExportPromotionCodesMutationError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>\n export type BillingExportPromotionCodesMutationVariables = {catalogueId: number;data: BodyType<PromotionExportWrite>}\n\n /**\n * @summary Export selected promotion codes with an audit reason\n */\nexport const useBillingExportPromotionCodes = <TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>,\n TContext = unknown>(options?: { mutation?:UseMutationOptions<Awaited<ReturnType<typeof billingExportPromotionCodes>>, TError,BillingExportPromotionCodesMutationVariables, TContext>, request?: SecondParameter<typeof request>}\n , queryClient?: QueryClient): UseMutationResult<\n Awaited<ReturnType<typeof billingExportPromotionCodes>>,\n TError,\n BillingExportPromotionCodesMutationVariables,\n TContext\n > => {\n return useMutation(getBillingExportPromotionCodesMutationOptions(options), queryClient);\n }\n export const getBillingQuoteCheckoutUrl = () => {\n\n\n\n\n return `/billing/checkouts`\n}\n\n/**\n * Freeze server-priced purchase and renewal terms for 15 minutes and reserve promotion stock. Reuse requestKey with the same product and normalized promotion set to retrieve the same checkout; changing either under the same key returns 409. No payment is submitted by quoting. Display recurring, renewalAmount and expiresAt before obtaining consent. A fully discounted offer without a required payment method can become fixed access without renewal. Uses the authenticated independent profile in the Biblio product context; support impersonation is refused. Responses are private and must not be cached. Requires high-assurance authentication.\n * @summary Quote a personal checkout\n */\nexport const billingQuoteCheckout = async (billingQuoteWrite: BillingQuoteWrite, options?: Parameters<typeof request>[1]): Promise<BillingCheckoutRead> => {\n\n const getHeaders = (h?: NonNullable<RequestInit['headers']>): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Symbol.iterator in h) {\n return Object.fromEntries(\n Array.from(h as Iterable<Iterable<string>>, (entry) => Array.from(entry) as [string, string]),\n );\n }\n const headers: Record<string, string | readonly string[]> = {};\n for (const [name, value] of Object.entries<string | readonly string[] | undefined>(h)) {\n if (value !== undefined) headers[name] = value;\n }\n return headers;\n };\nreturn request<BillingCheckoutRead>(getBillingQuoteCheckoutUrl(),\n {\n ...options,\n method: 'POST',\n headers: { 'Content-Type': 'application/json', ...getHeaders(options?.headers) },\n body: JSON.stringify(billingQuoteWrite)\n }\n);}\n\n\n\n\n\nexport const getBillingQuoteCheckoutMutationKey = () => ['billingQuoteCheckout'] as const;\n\nexport const getBillingQuoteCheckoutMutationOptions = <TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>,\n TContext = unknown>(options?: { mutation?:UseMutationOptions<Awaited<ReturnType<typeof billingQuoteCheckout>>, TError,BillingQuoteCheckoutMutationVariables, TContext>, request?: SecondParameter<typeof request>}\n): UseMutationOptions<Awaited<ReturnType<typeof billingQuoteCheckout>>, TError,BillingQuoteCheckoutMutationVariables, TContext> => {\n\nconst mutationKey = getBillingQuoteCheckoutMutationKey();\nconst {mutation: mutationOptions, request: requestOptions} = options ?\n options.mutation && 'mutationKey' in options.mutation && options.mutation.mutationKey ?\n options\n : {...options, mutation: {...options.mutation, mutationKey}}\n : {mutation: { mutationKey, }, request: undefined};\n\n\n\n\n const mutationFn: MutationFunction<Awaited<ReturnType<typeof billingQuoteCheckout>>, BillingQuoteCheckoutMutationVariables> = (props) => {\n const {data} = props ?? {};\n\n return billingQuoteCheckout(data,requestOptions)\n }\n\n\n\n\n\n\n return { mutationFn, ...mutationOptions }}\n\n export type BillingQuoteCheckoutMutationResult = NonNullable<Awaited<ReturnType<typeof billingQuoteCheckout>>>\n export type BillingQuoteCheckoutMutationBody = BodyType<BillingQuoteWrite>\n export type BillingQuoteCheckoutMutationError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>\n export type BillingQuoteCheckoutMutationVariables = {data: BodyType<BillingQuoteWrite>}\n\n /**\n * @summary Quote a personal checkout\n */\nexport const useBillingQuoteCheckout = <TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>,\n TContext = unknown>(options?: { mutation?:UseMutationOptions<Awaited<ReturnType<typeof billingQuoteCheckout>>, TError,BillingQuoteCheckoutMutationVariables, TContext>, request?: SecondParameter<typeof request>}\n , queryClient?: QueryClient): UseMutationResult<\n Awaited<ReturnType<typeof billingQuoteCheckout>>,\n TError,\n BillingQuoteCheckoutMutationVariables,\n TContext\n > => {\n return useMutation(getBillingQuoteCheckoutMutationOptions(options), queryClient);\n }\n export const getBillingReadCheckoutUrl = (checkoutId: number,) => {\n\n\n\n\n return `/billing/checkouts/${checkoutId}`\n}\n\n/**\n * Return persisted quote and outcome without contacting the payment provider. A submitting or unknown checkout requires the explicit reconcile operation; reading it does not retry payment. Uses the authenticated independent profile in the Biblio product context; support impersonation is refused. Responses are private and must not be cached.\n * @summary Read the current profile's checkout\n */\nexport const billingReadCheckout = async (checkoutId: number, options?: Parameters<typeof request>[1]): Promise<BillingCheckoutRead> => {\n\n return request<BillingCheckoutRead>(getBillingReadCheckoutUrl(checkoutId),\n {\n ...options,\n method: 'GET'\n\n\n }\n);}\n\n\n\n\n\nexport const getBillingReadCheckoutQueryKey = (checkoutId: number,) => {\n return [\n `/billing/checkouts/${checkoutId}`\n ] as const;\n }\n\n\nexport const getBillingReadCheckoutQueryOptions = <TData = Awaited<ReturnType<typeof billingReadCheckout>>, TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>>(checkoutId: number, options?: { query?:Partial<UseQueryOptions<Awaited<ReturnType<typeof billingReadCheckout>>, TError, TData>>, request?: SecondParameter<typeof request>}\n) => {\n\nconst {query: queryOptions, request: requestOptions} = options ?? {};\n\n const queryKey = queryOptions?.queryKey ?? getBillingReadCheckoutQueryKey(checkoutId);\n\n\n\n const queryFn: QueryFunction<Awaited<ReturnType<typeof billingReadCheckout>>> = ({ signal }) => billingReadCheckout(checkoutId, { signal, ...requestOptions });\n\n\n\n\n\n return { queryKey, queryFn, enabled: checkoutId !== null && checkoutId !== undefined, ...queryOptions} as UseQueryOptions<Awaited<ReturnType<typeof billingReadCheckout>>, TError, TData> & { queryKey: DataTag<QueryKey, TData, TError> }\n}\n\nexport type BillingReadCheckoutQueryResult = NonNullable<Awaited<ReturnType<typeof billingReadCheckout>>>\nexport type BillingReadCheckoutQueryError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>\n\n\nexport function useBillingReadCheckout<TData = Awaited<ReturnType<typeof billingReadCheckout>>, TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>>(\n checkoutId: number, options: { query:Partial<UseQueryOptions<Awaited<ReturnType<typeof billingReadCheckout>>, TError, TData>> & Pick<\n DefinedInitialDataOptions<\n Awaited<ReturnType<typeof billingReadCheckout>>,\n TError,\n Awaited<ReturnType<typeof billingReadCheckout>>\n > , 'initialData'\n >, request?: SecondParameter<typeof request>}\n , queryClient?: QueryClient\n ): DefinedUseQueryResult<TData, TError> & { queryKey: DataTag<QueryKey, TData, TError> }\nexport function useBillingReadCheckout<TData = Awaited<ReturnType<typeof billingReadCheckout>>, TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>>(\n checkoutId: number, options?: { query?:Partial<UseQueryOptions<Awaited<ReturnType<typeof billingReadCheckout>>, TError, TData>> & Pick<\n UndefinedInitialDataOptions<\n Awaited<ReturnType<typeof billingReadCheckout>>,\n TError,\n Awaited<ReturnType<typeof billingReadCheckout>>\n > , 'initialData'\n >, request?: SecondParameter<typeof request>}\n , queryClient?: QueryClient\n ): UseQueryResult<TData, TError> & { queryKey: DataTag<QueryKey, TData, TError> }\nexport function useBillingReadCheckout<TData = Awaited<ReturnType<typeof billingReadCheckout>>, TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>>(\n checkoutId: number, options?: { query?:Partial<UseQueryOptions<Awaited<ReturnType<typeof billingReadCheckout>>, TError, TData>>, request?: SecondParameter<typeof request>}\n , queryClient?: QueryClient\n ): UseQueryResult<TData, TError> & { queryKey: DataTag<QueryKey, TData, TError> }\n/**\n * @summary Read the current profile's checkout\n */\n\nexport function useBillingReadCheckout<TData = Awaited<ReturnType<typeof billingReadCheckout>>, TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>>(\n checkoutId: number, options?: { query?:Partial<UseQueryOptions<Awaited<ReturnType<typeof billingReadCheckout>>, TError, TData>>, request?: SecondParameter<typeof request>}\n , queryClient?: QueryClient\n ): UseQueryResult<TData, TError> & { queryKey: DataTag<QueryKey, TData, TError> } {\n\n const queryOptions = getBillingReadCheckoutQueryOptions(checkoutId,options)\n\n const query = useQuery(queryOptions, queryClient) as UseQueryResult<TData, TError> & { queryKey: DataTag<QueryKey, TData, TError> };\n\n return withQueryKey(query, queryOptions.queryKey);\n}\n\n\n\n\n\n\nexport const getBillingReconcileCheckoutUrl = (checkoutId: number,) => {\n\n\n\n\n return `/billing/checkouts/${checkoutId}/reconcile`\n}\n\n/**\n * Look up provider evidence using the checkout's existing operation identity and complete the same purchase when a matching receipt is found. This never resubmits payment. An absent receipt leaves the checkout submitting or unknown; terminal and quoted states are returned unchanged. Environment and quote integrity must match before access can be granted. Uses the authenticated independent profile in the Biblio product context; support impersonation is refused. Responses are private and must not be cached. Requires high-assurance authentication.\n * @summary Reconcile an uncertain checkout\n */\nexport const billingReconcileCheckout = async (checkoutId: number, options?: Parameters<typeof request>[1]): Promise<BillingCheckoutRead> => {\n\n return request<BillingCheckoutRead>(getBillingReconcileCheckoutUrl(checkoutId),\n {\n ...options,\n method: 'POST'\n\n\n }\n);}\n\n\n\n\n\nexport const getBillingReconcileCheckoutMutationKey = () => ['billingReconcileCheckout'] as const;\n\nexport const getBillingReconcileCheckoutMutationOptions = <TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>,\n TContext = unknown>(options?: { mutation?:UseMutationOptions<Awaited<ReturnType<typeof billingReconcileCheckout>>, TError,BillingReconcileCheckoutMutationVariables, TContext>, request?: SecondParameter<typeof request>}\n): UseMutationOptions<Awaited<ReturnType<typeof billingReconcileCheckout>>, TError,BillingReconcileCheckoutMutationVariables, TContext> => {\n\nconst mutationKey = getBillingReconcileCheckoutMutationKey();\nconst {mutation: mutationOptions, request: requestOptions} = options ?\n options.mutation && 'mutationKey' in options.mutation && options.mutation.mutationKey ?\n options\n : {...options, mutation: {...options.mutation, mutationKey}}\n : {mutation: { mutationKey, }, request: undefined};\n\n\n\n\n const mutationFn: MutationFunction<Awaited<ReturnType<typeof billingReconcileCheckout>>, BillingReconcileCheckoutMutationVariables> = (props) => {\n const {checkoutId} = props ?? {};\n\n return billingReconcileCheckout(checkoutId,requestOptions)\n }\n\n\n\n\n\n\n return { mutationFn, ...mutationOptions }}\n\n export type BillingReconcileCheckoutMutationResult = NonNullable<Awaited<ReturnType<typeof billingReconcileCheckout>>>\n\n export type BillingReconcileCheckoutMutationError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>\n export type BillingReconcileCheckoutMutationVariables = {checkoutId: number}\n\n /**\n * @summary Reconcile an uncertain checkout\n */\nexport const useBillingReconcileCheckout = <TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>,\n TContext = unknown>(options?: { mutation?:UseMutationOptions<Awaited<ReturnType<typeof billingReconcileCheckout>>, TError,BillingReconcileCheckoutMutationVariables, TContext>, request?: SecondParameter<typeof request>}\n , queryClient?: QueryClient): UseMutationResult<\n Awaited<ReturnType<typeof billingReconcileCheckout>>,\n TError,\n BillingReconcileCheckoutMutationVariables,\n TContext\n > => {\n return useMutation(getBillingReconcileCheckoutMutationOptions(options), queryClient);\n }\n export const getBillingSubmitCheckoutUrl = (checkoutId: number,) => {\n\n\n\n\n return `/billing/checkouts/${checkoutId}/submit`\n}\n\n/**\n * Submit the owned quote with acceptedTerms=true and a single-use provider nonce when payment or renewal requires it. Completed, submitting and unknown checkouts are returned without another charge. HTTP 200 alone does not mean payment succeeded: complete confirms the receipt, failed records a refusal, and unknown preserves an ambiguous provider outcome. Reconcile the same checkout after uncertainty; do not create a replacement payment. Uses the authenticated independent profile in the Biblio product context; support impersonation is refused. Responses are private and must not be cached. Requires high-assurance authentication.\n * @summary Submit an accepted checkout\n */\nexport const billingSubmitCheckout = async (checkoutId: number,\n billingCheckoutSubmitWrite: BillingCheckoutSubmitWrite, options?: Parameters<typeof request>[1]): Promise<BillingCheckoutRead> => {\n\n const getHeaders = (h?: NonNullable<RequestInit['headers']>): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Symbol.iterator in h) {\n return Object.fromEntries(\n Array.from(h as Iterable<Iterable<string>>, (entry) => Array.from(entry) as [string, string]),\n );\n }\n const headers: Record<string, string | readonly string[]> = {};\n for (const [name, value] of Object.entries<string | readonly string[] | undefined>(h)) {\n if (value !== undefined) headers[name] = value;\n }\n return headers;\n };\nreturn request<BillingCheckoutRead>(getBillingSubmitCheckoutUrl(checkoutId),\n {\n ...options,\n method: 'POST',\n headers: { 'Content-Type': 'application/json', ...getHeaders(options?.headers) },\n body: JSON.stringify(billingCheckoutSubmitWrite)\n }\n);}\n\n\n\n\n\nexport const getBillingSubmitCheckoutMutationKey = () => ['billingSubmitCheckout'] as const;\n\nexport const getBillingSubmitCheckoutMutationOptions = <TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>,\n TContext = unknown>(options?: { mutation?:UseMutationOptions<Awaited<ReturnType<typeof billingSubmitCheckout>>, TError,BillingSubmitCheckoutMutationVariables, TContext>, request?: SecondParameter<typeof request>}\n): UseMutationOptions<Awaited<ReturnType<typeof billingSubmitCheckout>>, TError,BillingSubmitCheckoutMutationVariables, TContext> => {\n\nconst mutationKey = getBillingSubmitCheckoutMutationKey();\nconst {mutation: mutationOptions, request: requestOptions} = options ?\n options.mutation && 'mutationKey' in options.mutation && options.mutation.mutationKey ?\n options\n : {...options, mutation: {...options.mutation, mutationKey}}\n : {mutation: { mutationKey, }, request: undefined};\n\n\n\n\n const mutationFn: MutationFunction<Awaited<ReturnType<typeof billingSubmitCheckout>>, BillingSubmitCheckoutMutationVariables> = (props) => {\n const {checkoutId,data} = props ?? {};\n\n return billingSubmitCheckout(checkoutId,data,requestOptions)\n }\n\n\n\n\n\n\n return { mutationFn, ...mutationOptions }}\n\n export type BillingSubmitCheckoutMutationResult = NonNullable<Awaited<ReturnType<typeof billingSubmitCheckout>>>\n export type BillingSubmitCheckoutMutationBody = BodyType<BillingCheckoutSubmitWrite>\n export type BillingSubmitCheckoutMutationError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>\n export type BillingSubmitCheckoutMutationVariables = {checkoutId: number;data: BodyType<BillingCheckoutSubmitWrite>}\n\n /**\n * @summary Submit an accepted checkout\n */\nexport const useBillingSubmitCheckout = <TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>,\n TContext = unknown>(options?: { mutation?:UseMutationOptions<Awaited<ReturnType<typeof billingSubmitCheckout>>, TError,BillingSubmitCheckoutMutationVariables, TContext>, request?: SecondParameter<typeof request>}\n , queryClient?: QueryClient): UseMutationResult<\n Awaited<ReturnType<typeof billingSubmitCheckout>>,\n TError,\n BillingSubmitCheckoutMutationVariables,\n TContext\n > => {\n return useMutation(getBillingSubmitCheckoutMutationOptions(options), queryClient);\n }\n export const getBillingCreateClientTokenUrl = () => {\n\n\n\n\n return `/billing/client-token`\n}\n\n/**\n * Obtain a Braintree client token for an owned, unexpired quoted checkout in the current environment. Pass it to the provider SDK to collect a single-use paymentMethodNonce, then submit the checkout. The token is sensitive and must not be logged or persisted in client analytics. Uses the authenticated independent profile in the Biblio product context; support impersonation is refused. Responses are private and must not be cached. Requires high-assurance authentication.\n * @summary Create a checkout payment client token\n */\nexport const billingCreateClientToken = async (billingClientTokenWrite: BillingClientTokenWrite, options?: Parameters<typeof request>[1]): Promise<BillingClientTokenRead> => {\n\n const getHeaders = (h?: NonNullable<RequestInit['headers']>): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Symbol.iterator in h) {\n return Object.fromEntries(\n Array.from(h as Iterable<Iterable<string>>, (entry) => Array.from(entry) as [string, string]),\n );\n }\n const headers: Record<string, string | readonly string[]> = {};\n for (const [name, value] of Object.entries<string | readonly string[] | undefined>(h)) {\n if (value !== undefined) headers[name] = value;\n }\n return headers;\n };\nreturn request<BillingClientTokenRead>(getBillingCreateClientTokenUrl(),\n {\n ...options,\n method: 'POST',\n headers: { 'Content-Type': 'application/json', ...getHeaders(options?.headers) },\n body: JSON.stringify(billingClientTokenWrite)\n }\n);}\n\n\n\n\n\nexport const getBillingCreateClientTokenMutationKey = () => ['billingCreateClientToken'] as const;\n\nexport const getBillingCreateClientTokenMutationOptions = <TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>,\n TContext = unknown>(options?: { mutation?:UseMutationOptions<Awaited<ReturnType<typeof billingCreateClientToken>>, TError,BillingCreateClientTokenMutationVariables, TContext>, request?: SecondParameter<typeof request>}\n): UseMutationOptions<Awaited<ReturnType<typeof billingCreateClientToken>>, TError,BillingCreateClientTokenMutationVariables, TContext> => {\n\nconst mutationKey = getBillingCreateClientTokenMutationKey();\nconst {mutation: mutationOptions, request: requestOptions} = options ?\n options.mutation && 'mutationKey' in options.mutation && options.mutation.mutationKey ?\n options\n : {...options, mutation: {...options.mutation, mutationKey}}\n : {mutation: { mutationKey, }, request: undefined};\n\n\n\n\n const mutationFn: MutationFunction<Awaited<ReturnType<typeof billingCreateClientToken>>, BillingCreateClientTokenMutationVariables> = (props) => {\n const {data} = props ?? {};\n\n return billingCreateClientToken(data,requestOptions)\n }\n\n\n\n\n\n\n return { mutationFn, ...mutationOptions }}\n\n export type BillingCreateClientTokenMutationResult = NonNullable<Awaited<ReturnType<typeof billingCreateClientToken>>>\n export type BillingCreateClientTokenMutationBody = BodyType<BillingClientTokenWrite>\n export type BillingCreateClientTokenMutationError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>\n export type BillingCreateClientTokenMutationVariables = {data: BodyType<BillingClientTokenWrite>}\n\n /**\n * @summary Create a checkout payment client token\n */\nexport const useBillingCreateClientToken = <TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>,\n TContext = unknown>(options?: { mutation?:UseMutationOptions<Awaited<ReturnType<typeof billingCreateClientToken>>, TError,BillingCreateClientTokenMutationVariables, TContext>, request?: SecondParameter<typeof request>}\n , queryClient?: QueryClient): UseMutationResult<\n Awaited<ReturnType<typeof billingCreateClientToken>>,\n TError,\n BillingCreateClientTokenMutationVariables,\n TContext\n > => {\n return useMutation(getBillingCreateClientTokenMutationOptions(options), queryClient);\n }\n export const getBillingPrepareIdentityUrl = () => {\n\n\n\n\n return `/billing/identity`\n}\n\n/**\n * Return or create the stable server-issued billing subject for the selected provider in the configured environment. Supply this subject to the mobile billing SDK; never substitute a profile ID or email. This explicit request does not grant course access or charge a payment method. Uses the authenticated independent profile in the Biblio product context; support impersonation is refused. Responses are private and must not be cached. Requires high-assurance authentication.\n * @summary Prepare the current profile's billing identity\n */\nexport const billingPrepareIdentity = async (billingIdentityWrite: BillingIdentityWrite, options?: Parameters<typeof request>[1]): Promise<BillingIdentityRead> => {\n\n const getHeaders = (h?: NonNullable<RequestInit['headers']>): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Symbol.iterator in h) {\n return Object.fromEntries(\n Array.from(h as Iterable<Iterable<string>>, (entry) => Array.from(entry) as [string, string]),\n );\n }\n const headers: Record<string, string | readonly string[]> = {};\n for (const [name, value] of Object.entries<string | readonly string[] | undefined>(h)) {\n if (value !== undefined) headers[name] = value;\n }\n return headers;\n };\nreturn request<BillingIdentityRead>(getBillingPrepareIdentityUrl(),\n {\n ...options,\n method: 'POST',\n headers: { 'Content-Type': 'application/json', ...getHeaders(options?.headers) },\n body: JSON.stringify(billingIdentityWrite)\n }\n);}\n\n\n\n\n\nexport const getBillingPrepareIdentityMutationKey = () => ['billingPrepareIdentity'] as const;\n\nexport const getBillingPrepareIdentityMutationOptions = <TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>,\n TContext = unknown>(options?: { mutation?:UseMutationOptions<Awaited<ReturnType<typeof billingPrepareIdentity>>, TError,BillingPrepareIdentityMutationVariables, TContext>, request?: SecondParameter<typeof request>}\n): UseMutationOptions<Awaited<ReturnType<typeof billingPrepareIdentity>>, TError,BillingPrepareIdentityMutationVariables, TContext> => {\n\nconst mutationKey = getBillingPrepareIdentityMutationKey();\nconst {mutation: mutationOptions, request: requestOptions} = options ?\n options.mutation && 'mutationKey' in options.mutation && options.mutation.mutationKey ?\n options\n : {...options, mutation: {...options.mutation, mutationKey}}\n : {mutation: { mutationKey, }, request: undefined};\n\n\n\n\n const mutationFn: MutationFunction<Awaited<ReturnType<typeof billingPrepareIdentity>>, BillingPrepareIdentityMutationVariables> = (props) => {\n const {data} = props ?? {};\n\n return billingPrepareIdentity(data,requestOptions)\n }\n\n\n\n\n\n\n return { mutationFn, ...mutationOptions }}\n\n export type BillingPrepareIdentityMutationResult = NonNullable<Awaited<ReturnType<typeof billingPrepareIdentity>>>\n export type BillingPrepareIdentityMutationBody = BodyType<BillingIdentityWrite>\n export type BillingPrepareIdentityMutationError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>\n export type BillingPrepareIdentityMutationVariables = {data: BodyType<BillingIdentityWrite>}\n\n /**\n * @summary Prepare the current profile's billing identity\n */\nexport const useBillingPrepareIdentity = <TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>,\n TContext = unknown>(options?: { mutation?:UseMutationOptions<Awaited<ReturnType<typeof billingPrepareIdentity>>, TError,BillingPrepareIdentityMutationVariables, TContext>, request?: SecondParameter<typeof request>}\n , queryClient?: QueryClient): UseMutationResult<\n Awaited<ReturnType<typeof billingPrepareIdentity>>,\n TError,\n BillingPrepareIdentityMutationVariables,\n TContext\n > => {\n return useMutation(getBillingPrepareIdentityMutationOptions(options), queryClient);\n }\n export const getBillingListProductsUrl = (params?: BillingListProductsParams,) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? 'null' : String(value))\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0 ? `/billing/products?${stringifiedParams}` : `/billing/products`\n}\n\n/**\n * List active offers visible to the profile, with server-calculated tax-inclusive prices. Retention offers appear only within seven days of their exact institution agreement's end. checkoutAvailable reflects configured web payment capability; providerProducts identifies active mappings in the current billing environment. Listing never starts a purchase. Uses the authenticated independent profile in the Biblio product context; support impersonation is refused. Responses are private and must not be cached.\n * @summary List personal purchase offers\n */\nexport const billingListProducts = async (params?: BillingListProductsParams, options?: Parameters<typeof request>[1]): Promise<BillingProductPage> => {\n\n return request<BillingProductPage>(getBillingListProductsUrl(params),\n {\n ...options,\n method: 'GET'\n\n\n }\n);}\n\n\n\n\n\nexport const getBillingListProductsQueryKey = (params?: BillingListProductsParams,) => {\n return [\n `/billing/products`, ...(params ? [params] : [])\n ] as const;\n }\n\n\nexport const getBillingListProductsQueryOptions = <TData = Awaited<ReturnType<typeof billingListProducts>>, TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>>(params?: BillingListProductsParams, options?: { query?:Partial<UseQueryOptions<Awaited<ReturnType<typeof billingListProducts>>, TError, TData>>, request?: SecondParameter<typeof request>}\n) => {\n\nconst {query: queryOptions, request: requestOptions} = options ?? {};\n\n const queryKey = queryOptions?.queryKey ?? getBillingListProductsQueryKey(params);\n\n\n\n const queryFn: QueryFunction<Awaited<ReturnType<typeof billingListProducts>>> = ({ signal }) => billingListProducts(params, { signal, ...requestOptions });\n\n\n\n\n\n return { queryKey, queryFn, ...queryOptions} as UseQueryOptions<Awaited<ReturnType<typeof billingListProducts>>, TError, TData> & { queryKey: DataTag<QueryKey, TData, TError> }\n}\n\nexport type BillingListProductsQueryResult = NonNullable<Awaited<ReturnType<typeof billingListProducts>>>\nexport type BillingListProductsQueryError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>\n\n\nexport function useBillingListProducts<TData = Awaited<ReturnType<typeof billingListProducts>>, TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>>(\n params: undefined | BillingListProductsParams, options: { query:Partial<UseQueryOptions<Awaited<ReturnType<typeof billingListProducts>>, TError, TData>> & Pick<\n DefinedInitialDataOptions<\n Awaited<ReturnType<typeof billingListProducts>>,\n TError,\n Awaited<ReturnType<typeof billingListProducts>>\n > , 'initialData'\n >, request?: SecondParameter<typeof request>}\n , queryClient?: QueryClient\n ): DefinedUseQueryResult<TData, TError> & { queryKey: DataTag<QueryKey, TData, TError> }\nexport function useBillingListProducts<TData = Awaited<ReturnType<typeof billingListProducts>>, TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>>(\n params?: BillingListProductsParams, options?: { query?:Partial<UseQueryOptions<Awaited<ReturnType<typeof billingListProducts>>, TError, TData>> & Pick<\n UndefinedInitialDataOptions<\n Awaited<ReturnType<typeof billingListProducts>>,\n TError,\n Awaited<ReturnType<typeof billingListProducts>>\n > , 'initialData'\n >, request?: SecondParameter<typeof request>}\n , queryClient?: QueryClient\n ): UseQueryResult<TData, TError> & { queryKey: DataTag<QueryKey, TData, TError> }\nexport function useBillingListProducts<TData = Awaited<ReturnType<typeof billingListProducts>>, TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>>(\n params?: BillingListProductsParams, options?: { query?:Partial<UseQueryOptions<Awaited<ReturnType<typeof billingListProducts>>, TError, TData>>, request?: SecondParameter<typeof request>}\n , queryClient?: QueryClient\n ): UseQueryResult<TData, TError> & { queryKey: DataTag<QueryKey, TData, TError> }\n/**\n * @summary List personal purchase offers\n */\n\nexport function useBillingListProducts<TData = Awaited<ReturnType<typeof billingListProducts>>, TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>>(\n params?: BillingListProductsParams, options?: { query?:Partial<UseQueryOptions<Awaited<ReturnType<typeof billingListProducts>>, TError, TData>>, request?: SecondParameter<typeof request>}\n , queryClient?: QueryClient\n ): UseQueryResult<TData, TError> & { queryKey: DataTag<QueryKey, TData, TError> } {\n\n const queryOptions = getBillingListProductsQueryOptions(params,options)\n\n const query = useQuery(queryOptions, queryClient) as UseQueryResult<TData, TError> & { queryKey: DataTag<QueryKey, TData, TError> };\n\n return withQueryKey(query, queryOptions.queryKey);\n}\n\n\n\n\n\n\nexport const getBillingSetOfferAvailabilityUrl = (productId: number,) => {\n\n\n\n\n return `/billing/products/${productId}/availability`\n}\n\n/**\n * Set offer availability after commercial review and record the reason in the audit trail. Requires catalogue finance and global commercial authority. Returns 204 with no response body. Requires high-assurance authentication.\n * @summary Activate or withdraw an offer\n */\nexport const billingSetOfferAvailability = async (productId: number,\n billingProductAvailabilityWrite: BillingProductAvailabilityWrite, options?: Parameters<typeof request>[1]): Promise<void> => {\n\n const getHeaders = (h?: NonNullable<RequestInit['headers']>): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Symbol.iterator in h) {\n return Object.fromEntries(\n Array.from(h as Iterable<Iterable<string>>, (entry) => Array.from(entry) as [string, string]),\n );\n }\n const headers: Record<string, string | readonly string[]> = {};\n for (const [name, value] of Object.entries<string | readonly string[] | undefined>(h)) {\n if (value !== undefined) headers[name] = value;\n }\n return headers;\n };\nreturn request<void>(getBillingSetOfferAvailabilityUrl(productId),\n {\n ...options,\n method: 'PUT',\n headers: { 'Content-Type': 'application/json', ...getHeaders(options?.headers) },\n body: JSON.stringify(billingProductAvailabilityWrite)\n }\n);}\n\n\n\n\n\nexport const getBillingSetOfferAvailabilityMutationKey = () => ['billingSetOfferAvailability'] as const;\n\nexport const getBillingSetOfferAvailabilityMutationOptions = <TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>,\n TContext = unknown>(options?: { mutation?:UseMutationOptions<Awaited<ReturnType<typeof billingSetOfferAvailability>>, TError,BillingSetOfferAvailabilityMutationVariables, TContext>, request?: SecondParameter<typeof request>}\n): UseMutationOptions<Awaited<ReturnType<typeof billingSetOfferAvailability>>, TError,BillingSetOfferAvailabilityMutationVariables, TContext> => {\n\nconst mutationKey = getBillingSetOfferAvailabilityMutationKey();\nconst {mutation: mutationOptions, request: requestOptions} = options ?\n options.mutation && 'mutationKey' in options.mutation && options.mutation.mutationKey ?\n options\n : {...options, mutation: {...options.mutation, mutationKey}}\n : {mutation: { mutationKey, }, request: undefined};\n\n\n\n\n const mutationFn: MutationFunction<Awaited<ReturnType<typeof billingSetOfferAvailability>>, BillingSetOfferAvailabilityMutationVariables> = (props) => {\n const {productId,data} = props ?? {};\n\n return billingSetOfferAvailability(productId,data,requestOptions)\n }\n\n\n\n\n\n\n return { mutationFn, ...mutationOptions }}\n\n export type BillingSetOfferAvailabilityMutationResult = NonNullable<Awaited<ReturnType<typeof billingSetOfferAvailability>>>\n export type BillingSetOfferAvailabilityMutationBody = BodyType<BillingProductAvailabilityWrite>\n export type BillingSetOfferAvailabilityMutationError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>\n export type BillingSetOfferAvailabilityMutationVariables = {productId: number;data: BodyType<BillingProductAvailabilityWrite>}\n\n /**\n * @summary Activate or withdraw an offer\n */\nexport const useBillingSetOfferAvailability = <TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>,\n TContext = unknown>(options?: { mutation?:UseMutationOptions<Awaited<ReturnType<typeof billingSetOfferAvailability>>, TError,BillingSetOfferAvailabilityMutationVariables, TContext>, request?: SecondParameter<typeof request>}\n , queryClient?: QueryClient): UseMutationResult<\n Awaited<ReturnType<typeof billingSetOfferAvailability>>,\n TError,\n BillingSetOfferAvailabilityMutationVariables,\n TContext\n > => {\n return useMutation(getBillingSetOfferAvailabilityMutationOptions(options), queryClient);\n }\n export const getBillingBindProviderProductUrl = (productId: number,) => {\n\n\n\n\n return `/billing/products/${productId}/provider`\n}\n\n/**\n * Catalogue finance operators associate an offer with an exact provider product and sandbox or production environment. A provider/environment/product identifier cannot be shared by different offers. Store products must be public recurring offers. Returns 204 with no response body. Requires high-assurance authentication.\n * @summary Bind an offer to a provider product\n */\nexport const billingBindProviderProduct = async (productId: number,\n billingProviderProductWrite: BillingProviderProductWrite, options?: Parameters<typeof request>[1]): Promise<void> => {\n\n const getHeaders = (h?: NonNullable<RequestInit['headers']>): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Symbol.iterator in h) {\n return Object.fromEntries(\n Array.from(h as Iterable<Iterable<string>>, (entry) => Array.from(entry) as [string, string]),\n );\n }\n const headers: Record<string, string | readonly string[]> = {};\n for (const [name, value] of Object.entries<string | readonly string[] | undefined>(h)) {\n if (value !== undefined) headers[name] = value;\n }\n return headers;\n };\nreturn request<void>(getBillingBindProviderProductUrl(productId),\n {\n ...options,\n method: 'PUT',\n headers: { 'Content-Type': 'application/json', ...getHeaders(options?.headers) },\n body: JSON.stringify(billingProviderProductWrite)\n }\n);}\n\n\n\n\n\nexport const getBillingBindProviderProductMutationKey = () => ['billingBindProviderProduct'] as const;\n\nexport const getBillingBindProviderProductMutationOptions = <TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>,\n TContext = unknown>(options?: { mutation?:UseMutationOptions<Awaited<ReturnType<typeof billingBindProviderProduct>>, TError,BillingBindProviderProductMutationVariables, TContext>, request?: SecondParameter<typeof request>}\n): UseMutationOptions<Awaited<ReturnType<typeof billingBindProviderProduct>>, TError,BillingBindProviderProductMutationVariables, TContext> => {\n\nconst mutationKey = getBillingBindProviderProductMutationKey();\nconst {mutation: mutationOptions, request: requestOptions} = options ?\n options.mutation && 'mutationKey' in options.mutation && options.mutation.mutationKey ?\n options\n : {...options, mutation: {...options.mutation, mutationKey}}\n : {mutation: { mutationKey, }, request: undefined};\n\n\n\n\n const mutationFn: MutationFunction<Awaited<ReturnType<typeof billingBindProviderProduct>>, BillingBindProviderProductMutationVariables> = (props) => {\n const {productId,data} = props ?? {};\n\n return billingBindProviderProduct(productId,data,requestOptions)\n }\n\n\n\n\n\n\n return { mutationFn, ...mutationOptions }}\n\n export type BillingBindProviderProductMutationResult = NonNullable<Awaited<ReturnType<typeof billingBindProviderProduct>>>\n export type BillingBindProviderProductMutationBody = BodyType<BillingProviderProductWrite>\n export type BillingBindProviderProductMutationError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>\n export type BillingBindProviderProductMutationVariables = {productId: number;data: BodyType<BillingProviderProductWrite>}\n\n /**\n * @summary Bind an offer to a provider product\n */\nexport const useBillingBindProviderProduct = <TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>,\n TContext = unknown>(options?: { mutation?:UseMutationOptions<Awaited<ReturnType<typeof billingBindProviderProduct>>, TError,BillingBindProviderProductMutationVariables, TContext>, request?: SecondParameter<typeof request>}\n , queryClient?: QueryClient): UseMutationResult<\n Awaited<ReturnType<typeof billingBindProviderProduct>>,\n TError,\n BillingBindProviderProductMutationVariables,\n TContext\n > => {\n return useMutation(getBillingBindProviderProductMutationOptions(options), queryClient);\n }\n export const getBillingPromotionGeneratorUrl = (generatorId: number,) => {\n\n\n\n\n return `/billing/promotion-generators/${generatorId}`\n}\n\n/**\n * Return a safe definition to a global commercial operator. batchSize counts generated codes while rule.quantity describes permitted uses of each code. Historical missing rule values stay null.\n * @summary Read a promotion generator definition\n */\nexport const billingPromotionGenerator = async (generatorId: number, options?: Parameters<typeof request>[1]): Promise<PromotionGeneratorRead> => {\n\n return request<PromotionGeneratorRead>(getBillingPromotionGeneratorUrl(generatorId),\n {\n ...options,\n method: 'GET'\n\n\n }\n);}\n\n\n\n\n\nexport const getBillingPromotionGeneratorQueryKey = (generatorId: number,) => {\n return [\n `/billing/promotion-generators/${generatorId}`\n ] as const;\n }\n\n\nexport const getBillingPromotionGeneratorQueryOptions = <TData = Awaited<ReturnType<typeof billingPromotionGenerator>>, TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>>(generatorId: number, options?: { query?:Partial<UseQueryOptions<Awaited<ReturnType<typeof billingPromotionGenerator>>, TError, TData>>, request?: SecondParameter<typeof request>}\n) => {\n\nconst {query: queryOptions, request: requestOptions} = options ?? {};\n\n const queryKey = queryOptions?.queryKey ?? getBillingPromotionGeneratorQueryKey(generatorId);\n\n\n\n const queryFn: QueryFunction<Awaited<ReturnType<typeof billingPromotionGenerator>>> = ({ signal }) => billingPromotionGenerator(generatorId, { signal, ...requestOptions });\n\n\n\n\n\n return { queryKey, queryFn, enabled: generatorId !== null && generatorId !== undefined, ...queryOptions} as UseQueryOptions<Awaited<ReturnType<typeof billingPromotionGenerator>>, TError, TData> & { queryKey: DataTag<QueryKey, TData, TError> }\n}\n\nexport type BillingPromotionGeneratorQueryResult = NonNullable<Awaited<ReturnType<typeof billingPromotionGenerator>>>\nexport type BillingPromotionGeneratorQueryError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>\n\n\nexport function useBillingPromotionGenerator<TData = Awaited<ReturnType<typeof billingPromotionGenerator>>, TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>>(\n generatorId: number, options: { query:Partial<UseQueryOptions<Awaited<ReturnType<typeof billingPromotionGenerator>>, TError, TData>> & Pick<\n DefinedInitialDataOptions<\n Awaited<ReturnType<typeof billingPromotionGenerator>>,\n TError,\n Awaited<ReturnType<typeof billingPromotionGenerator>>\n > , 'initialData'\n >, request?: SecondParameter<typeof request>}\n , queryClient?: QueryClient\n ): DefinedUseQueryResult<TData, TError> & { queryKey: DataTag<QueryKey, TData, TError> }\nexport function useBillingPromotionGenerator<TData = Awaited<ReturnType<typeof billingPromotionGenerator>>, TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>>(\n generatorId: number, options?: { query?:Partial<UseQueryOptions<Awaited<ReturnType<typeof billingPromotionGenerator>>, TError, TData>> & Pick<\n UndefinedInitialDataOptions<\n Awaited<ReturnType<typeof billingPromotionGenerator>>,\n TError,\n Awaited<ReturnType<typeof billingPromotionGenerator>>\n > , 'initialData'\n >, request?: SecondParameter<typeof request>}\n , queryClient?: QueryClient\n ): UseQueryResult<TData, TError> & { queryKey: DataTag<QueryKey, TData, TError> }\nexport function useBillingPromotionGenerator<TData = Awaited<ReturnType<typeof billingPromotionGenerator>>, TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>>(\n generatorId: number, options?: { query?:Partial<UseQueryOptions<Awaited<ReturnType<typeof billingPromotionGenerator>>, TError, TData>>, request?: SecondParameter<typeof request>}\n , queryClient?: QueryClient\n ): UseQueryResult<TData, TError> & { queryKey: DataTag<QueryKey, TData, TError> }\n/**\n * @summary Read a promotion generator definition\n */\n\nexport function useBillingPromotionGenerator<TData = Awaited<ReturnType<typeof billingPromotionGenerator>>, TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>>(\n generatorId: number, options?: { query?:Partial<UseQueryOptions<Awaited<ReturnType<typeof billingPromotionGenerator>>, TError, TData>>, request?: SecondParameter<typeof request>}\n , queryClient?: QueryClient\n ): UseQueryResult<TData, TError> & { queryKey: DataTag<QueryKey, TData, TError> } {\n\n const queryOptions = getBillingPromotionGeneratorQueryOptions(generatorId,options)\n\n const query = useQuery(queryOptions, queryClient) as UseQueryResult<TData, TError> & { queryKey: DataTag<QueryKey, TData, TError> };\n\n return withQueryKey(query, queryOptions.queryKey);\n}\n\n\n\n\n\n\nexport const getBillingRedeemPromotionUrl = () => {\n\n\n\n\n return `/billing/promotions/redeem`\n}\n\n/**\n * Redeem a usable benefit code that does not require a payment method, atomically consuming stock and creating personal access through shared contracts. Discounts use checkout instead. Reusing requestKey for the same promotion returns the previous redemption; reuse for another code returns 409. Case/Unicode-normalized lookup, per-user stock and access-window limits apply. Uses the authenticated independent profile in the Biblio product context; support impersonation is refused. Responses are private and must not be cached. Requires high-assurance authentication.\n * @summary Redeem an access benefit for the current profile\n */\nexport const billingRedeemPromotion = async (promotionRedeemWrite: PromotionRedeemWrite, options?: Parameters<typeof request>[1]): Promise<PromotionRedemptionRead> => {\n\n const getHeaders = (h?: NonNullable<RequestInit['headers']>): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Symbol.iterator in h) {\n return Object.fromEntries(\n Array.from(h as Iterable<Iterable<string>>, (entry) => Array.from(entry) as [string, string]),\n );\n }\n const headers: Record<string, string | readonly string[]> = {};\n for (const [name, value] of Object.entries<string | readonly string[] | undefined>(h)) {\n if (value !== undefined) headers[name] = value;\n }\n return headers;\n };\nreturn request<PromotionRedemptionRead>(getBillingRedeemPromotionUrl(),\n {\n ...options,\n method: 'POST',\n headers: { 'Content-Type': 'application/json', ...getHeaders(options?.headers) },\n body: JSON.stringify(promotionRedeemWrite)\n }\n);}\n\n\n\n\n\nexport const getBillingRedeemPromotionMutationKey = () => ['billingRedeemPromotion'] as const;\n\nexport const getBillingRedeemPromotionMutationOptions = <TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>,\n TContext = unknown>(options?: { mutation?:UseMutationOptions<Awaited<ReturnType<typeof billingRedeemPromotion>>, TError,BillingRedeemPromotionMutationVariables, TContext>, request?: SecondParameter<typeof request>}\n): UseMutationOptions<Awaited<ReturnType<typeof billingRedeemPromotion>>, TError,BillingRedeemPromotionMutationVariables, TContext> => {\n\nconst mutationKey = getBillingRedeemPromotionMutationKey();\nconst {mutation: mutationOptions, request: requestOptions} = options ?\n options.mutation && 'mutationKey' in options.mutation && options.mutation.mutationKey ?\n options\n : {...options, mutation: {...options.mutation, mutationKey}}\n : {mutation: { mutationKey, }, request: undefined};\n\n\n\n\n const mutationFn: MutationFunction<Awaited<ReturnType<typeof billingRedeemPromotion>>, BillingRedeemPromotionMutationVariables> = (props) => {\n const {data} = props ?? {};\n\n return billingRedeemPromotion(data,requestOptions)\n }\n\n\n\n\n\n\n return { mutationFn, ...mutationOptions }}\n\n export type BillingRedeemPromotionMutationResult = NonNullable<Awaited<ReturnType<typeof billingRedeemPromotion>>>\n export type BillingRedeemPromotionMutationBody = BodyType<PromotionRedeemWrite>\n export type BillingRedeemPromotionMutationError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>\n export type BillingRedeemPromotionMutationVariables = {data: BodyType<PromotionRedeemWrite>}\n\n /**\n * @summary Redeem an access benefit for the current profile\n */\nexport const useBillingRedeemPromotion = <TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>,\n TContext = unknown>(options?: { mutation?:UseMutationOptions<Awaited<ReturnType<typeof billingRedeemPromotion>>, TError,BillingRedeemPromotionMutationVariables, TContext>, request?: SecondParameter<typeof request>}\n , queryClient?: QueryClient): UseMutationResult<\n Awaited<ReturnType<typeof billingRedeemPromotion>>,\n TError,\n BillingRedeemPromotionMutationVariables,\n TContext\n > => {\n return useMutation(getBillingRedeemPromotionMutationOptions(options), queryClient);\n }\n export const getBillingPromotionCapacityUrl = (promotionId: number,) => {\n\n\n\n\n return `/billing/promotions/${promotionId}/capacity`\n}\n\n/**\n * Global commercial operators inspect total and per-user limits, redeemed stock and live reservations. Submitting or unknown checkouts keep reservations even after quote expiry. remaining is max(0, quantity - redeemed - reserved); a positive count alone does not prove a rule is active or usable.\n * @summary Inspect promotion stock and payment reservations\n */\nexport const billingPromotionCapacity = async (promotionId: number, options?: Parameters<typeof request>[1]): Promise<PromotionCapacityRead> => {\n\n return request<PromotionCapacityRead>(getBillingPromotionCapacityUrl(promotionId),\n {\n ...options,\n method: 'GET'\n\n\n }\n);}\n\n\n\n\n\nexport const getBillingPromotionCapacityQueryKey = (promotionId: number,) => {\n return [\n `/billing/promotions/${promotionId}/capacity`\n ] as const;\n }\n\n\nexport const getBillingPromotionCapacityQueryOptions = <TData = Awaited<ReturnType<typeof billingPromotionCapacity>>, TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>>(promotionId: number, options?: { query?:Partial<UseQueryOptions<Awaited<ReturnType<typeof billingPromotionCapacity>>, TError, TData>>, request?: SecondParameter<typeof request>}\n) => {\n\nconst {query: queryOptions, request: requestOptions} = options ?? {};\n\n const queryKey = queryOptions?.queryKey ?? getBillingPromotionCapacityQueryKey(promotionId);\n\n\n\n const queryFn: QueryFunction<Awaited<ReturnType<typeof billingPromotionCapacity>>> = ({ signal }) => billingPromotionCapacity(promotionId, { signal, ...requestOptions });\n\n\n\n\n\n return { queryKey, queryFn, enabled: promotionId !== null && promotionId !== undefined, ...queryOptions} as UseQueryOptions<Awaited<ReturnType<typeof billingPromotionCapacity>>, TError, TData> & { queryKey: DataTag<QueryKey, TData, TError> }\n}\n\nexport type BillingPromotionCapacityQueryResult = NonNullable<Awaited<ReturnType<typeof billingPromotionCapacity>>>\nexport type BillingPromotionCapacityQueryError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>\n\n\nexport function useBillingPromotionCapacity<TData = Awaited<ReturnType<typeof billingPromotionCapacity>>, TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>>(\n promotionId: number, options: { query:Partial<UseQueryOptions<Awaited<ReturnType<typeof billingPromotionCapacity>>, TError, TData>> & Pick<\n DefinedInitialDataOptions<\n Awaited<ReturnType<typeof billingPromotionCapacity>>,\n TError,\n Awaited<ReturnType<typeof billingPromotionCapacity>>\n > , 'initialData'\n >, request?: SecondParameter<typeof request>}\n , queryClient?: QueryClient\n ): DefinedUseQueryResult<TData, TError> & { queryKey: DataTag<QueryKey, TData, TError> }\nexport function useBillingPromotionCapacity<TData = Awaited<ReturnType<typeof billingPromotionCapacity>>, TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>>(\n promotionId: number, options?: { query?:Partial<UseQueryOptions<Awaited<ReturnType<typeof billingPromotionCapacity>>, TError, TData>> & Pick<\n UndefinedInitialDataOptions<\n Awaited<ReturnType<typeof billingPromotionCapacity>>,\n TError,\n Awaited<ReturnType<typeof billingPromotionCapacity>>\n > , 'initialData'\n >, request?: SecondParameter<typeof request>}\n , queryClient?: QueryClient\n ): UseQueryResult<TData, TError> & { queryKey: DataTag<QueryKey, TData, TError> }\nexport function useBillingPromotionCapacity<TData = Awaited<ReturnType<typeof billingPromotionCapacity>>, TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>>(\n promotionId: number, options?: { query?:Partial<UseQueryOptions<Awaited<ReturnType<typeof billingPromotionCapacity>>, TError, TData>>, request?: SecondParameter<typeof request>}\n , queryClient?: QueryClient\n ): UseQueryResult<TData, TError> & { queryKey: DataTag<QueryKey, TData, TError> }\n/**\n * @summary Inspect promotion stock and payment reservations\n */\n\nexport function useBillingPromotionCapacity<TData = Awaited<ReturnType<typeof billingPromotionCapacity>>, TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>>(\n promotionId: number, options?: { query?:Partial<UseQueryOptions<Awaited<ReturnType<typeof billingPromotionCapacity>>, TError, TData>>, request?: SecondParameter<typeof request>}\n , queryClient?: QueryClient\n ): UseQueryResult<TData, TError> & { queryKey: DataTag<QueryKey, TData, TError> } {\n\n const queryOptions = getBillingPromotionCapacityQueryOptions(promotionId,options)\n\n const query = useQuery(queryOptions, queryClient) as UseQueryResult<TData, TError> & { queryKey: DataTag<QueryKey, TData, TError> };\n\n return withQueryKey(query, queryOptions.queryKey);\n}\n\n\n\n\n\n\nexport const getBillingRevealPromotionCodeUrl = (promotionId: number,) => {\n\n\n\n\n return `/billing/promotions/${promotionId}/code`\n}\n\n/**\n * A catalogue finance operator decrypts one distribution code and records the supplied reason. The response is private, no-store; do not expose it in public reports. Requires high-assurance authentication.\n * @summary Reveal one promotion code with an audit reason\n */\nexport const billingRevealPromotionCode = async (promotionId: number,\n promotionRevealWrite: PromotionRevealWrite, options?: Parameters<typeof request>[1]): Promise<PromotionCodeRead> => {\n\n const getHeaders = (h?: NonNullable<RequestInit['headers']>): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Symbol.iterator in h) {\n return Object.fromEntries(\n Array.from(h as Iterable<Iterable<string>>, (entry) => Array.from(entry) as [string, string]),\n );\n }\n const headers: Record<string, string | readonly string[]> = {};\n for (const [name, value] of Object.entries<string | readonly string[] | undefined>(h)) {\n if (value !== undefined) headers[name] = value;\n }\n return headers;\n };\nreturn request<PromotionCodeRead>(getBillingRevealPromotionCodeUrl(promotionId),\n {\n ...options,\n method: 'POST',\n headers: { 'Content-Type': 'application/json', ...getHeaders(options?.headers) },\n body: JSON.stringify(promotionRevealWrite)\n }\n);}\n\n\n\n\n\nexport const getBillingRevealPromotionCodeMutationKey = () => ['billingRevealPromotionCode'] as const;\n\nexport const getBillingRevealPromotionCodeMutationOptions = <TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>,\n TContext = unknown>(options?: { mutation?:UseMutationOptions<Awaited<ReturnType<typeof billingRevealPromotionCode>>, TError,BillingRevealPromotionCodeMutationVariables, TContext>, request?: SecondParameter<typeof request>}\n): UseMutationOptions<Awaited<ReturnType<typeof billingRevealPromotionCode>>, TError,BillingRevealPromotionCodeMutationVariables, TContext> => {\n\nconst mutationKey = getBillingRevealPromotionCodeMutationKey();\nconst {mutation: mutationOptions, request: requestOptions} = options ?\n options.mutation && 'mutationKey' in options.mutation && options.mutation.mutationKey ?\n options\n : {...options, mutation: {...options.mutation, mutationKey}}\n : {mutation: { mutationKey, }, request: undefined};\n\n\n\n\n const mutationFn: MutationFunction<Awaited<ReturnType<typeof billingRevealPromotionCode>>, BillingRevealPromotionCodeMutationVariables> = (props) => {\n const {promotionId,data} = props ?? {};\n\n return billingRevealPromotionCode(promotionId,data,requestOptions)\n }\n\n\n\n\n\n\n return { mutationFn, ...mutationOptions }}\n\n export type BillingRevealPromotionCodeMutationResult = NonNullable<Awaited<ReturnType<typeof billingRevealPromotionCode>>>\n export type BillingRevealPromotionCodeMutationBody = BodyType<PromotionRevealWrite>\n export type BillingRevealPromotionCodeMutationError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>\n export type BillingRevealPromotionCodeMutationVariables = {promotionId: number;data: BodyType<PromotionRevealWrite>}\n\n /**\n * @summary Reveal one promotion code with an audit reason\n */\nexport const useBillingRevealPromotionCode = <TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>,\n TContext = unknown>(options?: { mutation?:UseMutationOptions<Awaited<ReturnType<typeof billingRevealPromotionCode>>, TError,BillingRevealPromotionCodeMutationVariables, TContext>, request?: SecondParameter<typeof request>}\n , queryClient?: QueryClient): UseMutationResult<\n Awaited<ReturnType<typeof billingRevealPromotionCode>>,\n TError,\n BillingRevealPromotionCodeMutationVariables,\n TContext\n > => {\n return useMutation(getBillingRevealPromotionCodeMutationOptions(options), queryClient);\n }\n export const getBillingPromotionRedemptionsUrl = (promotionId: number,\n params?: BillingPromotionRedemptionsParams,) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? 'null' : String(value))\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0 ? `/billing/promotions/${promotionId}/redemptions?${stringifiedParams}` : `/billing/promotions/${promotionId}/redemptions`\n}\n\n/**\n * Global commercial operators list a promotion's native and imported redemptions, newest first. Historical beneficiary, contract, transaction, discount and time references can be null; do not infer a payment from a redemption. Codes and raw source identifiers are omitted.\n * @summary List promotion redemption evidence\n */\nexport const billingPromotionRedemptions = async (promotionId: number,\n params?: BillingPromotionRedemptionsParams, options?: Parameters<typeof request>[1]): Promise<PromotionRedemptionHistoryPage> => {\n\n return request<PromotionRedemptionHistoryPage>(getBillingPromotionRedemptionsUrl(promotionId,params),\n {\n ...options,\n method: 'GET'\n\n\n }\n);}\n\n\n\n\n\nexport const getBillingPromotionRedemptionsQueryKey = (promotionId: number,\n params?: BillingPromotionRedemptionsParams,) => {\n return [\n `/billing/promotions/${promotionId}/redemptions`, ...(params ? [params] : [])\n ] as const;\n }\n\n\nexport const getBillingPromotionRedemptionsQueryOptions = <TData = Awaited<ReturnType<typeof billingPromotionRedemptions>>, TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>>(promotionId: number,\n params?: BillingPromotionRedemptionsParams, options?: { query?:Partial<UseQueryOptions<Awaited<ReturnType<typeof billingPromotionRedemptions>>, TError, TData>>, request?: SecondParameter<typeof request>}\n) => {\n\nconst {query: queryOptions, request: requestOptions} = options ?? {};\n\n const queryKey = queryOptions?.queryKey ?? getBillingPromotionRedemptionsQueryKey(promotionId,params);\n\n\n\n const queryFn: QueryFunction<Awaited<ReturnType<typeof billingPromotionRedemptions>>> = ({ signal }) => billingPromotionRedemptions(promotionId,params, { signal, ...requestOptions });\n\n\n\n\n\n return { queryKey, queryFn, enabled: promotionId !== null && promotionId !== undefined, ...queryOptions} as UseQueryOptions<Awaited<ReturnType<typeof billingPromotionRedemptions>>, TError, TData> & { queryKey: DataTag<QueryKey, TData, TError> }\n}\n\nexport type BillingPromotionRedemptionsQueryResult = NonNullable<Awaited<ReturnType<typeof billingPromotionRedemptions>>>\nexport type BillingPromotionRedemptionsQueryError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>\n\n\nexport function useBillingPromotionRedemptions<TData = Awaited<ReturnType<typeof billingPromotionRedemptions>>, TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>>(\n promotionId: number,\n params: undefined | BillingPromotionRedemptionsParams, options: { query:Partial<UseQueryOptions<Awaited<ReturnType<typeof billingPromotionRedemptions>>, TError, TData>> & Pick<\n DefinedInitialDataOptions<\n Awaited<ReturnType<typeof billingPromotionRedemptions>>,\n TError,\n Awaited<ReturnType<typeof billingPromotionRedemptions>>\n > , 'initialData'\n >, request?: SecondParameter<typeof request>}\n , queryClient?: QueryClient\n ): DefinedUseQueryResult<TData, TError> & { queryKey: DataTag<QueryKey, TData, TError> }\nexport function useBillingPromotionRedemptions<TData = Awaited<ReturnType<typeof billingPromotionRedemptions>>, TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>>(\n promotionId: number,\n params?: BillingPromotionRedemptionsParams, options?: { query?:Partial<UseQueryOptions<Awaited<ReturnType<typeof billingPromotionRedemptions>>, TError, TData>> & Pick<\n UndefinedInitialDataOptions<\n Awaited<ReturnType<typeof billingPromotionRedemptions>>,\n TError,\n Awaited<ReturnType<typeof billingPromotionRedemptions>>\n > , 'initialData'\n >, request?: SecondParameter<typeof request>}\n , queryClient?: QueryClient\n ): UseQueryResult<TData, TError> & { queryKey: DataTag<QueryKey, TData, TError> }\nexport function useBillingPromotionRedemptions<TData = Awaited<ReturnType<typeof billingPromotionRedemptions>>, TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>>(\n promotionId: number,\n params?: BillingPromotionRedemptionsParams, options?: { query?:Partial<UseQueryOptions<Awaited<ReturnType<typeof billingPromotionRedemptions>>, TError, TData>>, request?: SecondParameter<typeof request>}\n , queryClient?: QueryClient\n ): UseQueryResult<TData, TError> & { queryKey: DataTag<QueryKey, TData, TError> }\n/**\n * @summary List promotion redemption evidence\n */\n\nexport function useBillingPromotionRedemptions<TData = Awaited<ReturnType<typeof billingPromotionRedemptions>>, TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>>(\n promotionId: number,\n params?: BillingPromotionRedemptionsParams, options?: { query?:Partial<UseQueryOptions<Awaited<ReturnType<typeof billingPromotionRedemptions>>, TError, TData>>, request?: SecondParameter<typeof request>}\n , queryClient?: QueryClient\n ): UseQueryResult<TData, TError> & { queryKey: DataTag<QueryKey, TData, TError> } {\n\n const queryOptions = getBillingPromotionRedemptionsQueryOptions(promotionId,params,options)\n\n const query = useQuery(queryOptions, queryClient) as UseQueryResult<TData, TError> & { queryKey: DataTag<QueryKey, TData, TError> };\n\n return withQueryKey(query, queryOptions.queryKey);\n}\n\n\n\n\n\n\nexport const getBillingRestoreStorePurchasesUrl = () => {\n\n\n\n\n return `/billing/store/restore`\n}\n\n/**\n * Fetch RevenueCat evidence for the server-issued billing subject and reconcile supported store receipts in the current environment with active provider mappings. Receipts belonging to another profile are refused. Unknown receipt price, tax or renewal values stay unknown. The returned page contains restored subscriptions and can be empty; there is no client-supplied receipt-owner ID. Uses the authenticated independent profile in the Biblio product context; support impersonation is refused. Responses are private and must not be cached. Requires high-assurance authentication.\n * @summary Restore the current profile's mobile purchases\n */\nexport const billingRestoreStorePurchases = async (billingIdentityWrite: BillingIdentityWrite, options?: Parameters<typeof request>[1]): Promise<BillingSubscriptionPage> => {\n\n const getHeaders = (h?: NonNullable<RequestInit['headers']>): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Symbol.iterator in h) {\n return Object.fromEntries(\n Array.from(h as Iterable<Iterable<string>>, (entry) => Array.from(entry) as [string, string]),\n );\n }\n const headers: Record<string, string | readonly string[]> = {};\n for (const [name, value] of Object.entries<string | readonly string[] | undefined>(h)) {\n if (value !== undefined) headers[name] = value;\n }\n return headers;\n };\nreturn request<BillingSubscriptionPage>(getBillingRestoreStorePurchasesUrl(),\n {\n ...options,\n method: 'POST',\n headers: { 'Content-Type': 'application/json', ...getHeaders(options?.headers) },\n body: JSON.stringify(billingIdentityWrite)\n }\n);}\n\n\n\n\n\nexport const getBillingRestoreStorePurchasesMutationKey = () => ['billingRestoreStorePurchases'] as const;\n\nexport const getBillingRestoreStorePurchasesMutationOptions = <TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>,\n TContext = unknown>(options?: { mutation?:UseMutationOptions<Awaited<ReturnType<typeof billingRestoreStorePurchases>>, TError,BillingRestoreStorePurchasesMutationVariables, TContext>, request?: SecondParameter<typeof request>}\n): UseMutationOptions<Awaited<ReturnType<typeof billingRestoreStorePurchases>>, TError,BillingRestoreStorePurchasesMutationVariables, TContext> => {\n\nconst mutationKey = getBillingRestoreStorePurchasesMutationKey();\nconst {mutation: mutationOptions, request: requestOptions} = options ?\n options.mutation && 'mutationKey' in options.mutation && options.mutation.mutationKey ?\n options\n : {...options, mutation: {...options.mutation, mutationKey}}\n : {mutation: { mutationKey, }, request: undefined};\n\n\n\n\n const mutationFn: MutationFunction<Awaited<ReturnType<typeof billingRestoreStorePurchases>>, BillingRestoreStorePurchasesMutationVariables> = (props) => {\n const {data} = props ?? {};\n\n return billingRestoreStorePurchases(data,requestOptions)\n }\n\n\n\n\n\n\n return { mutationFn, ...mutationOptions }}\n\n export type BillingRestoreStorePurchasesMutationResult = NonNullable<Awaited<ReturnType<typeof billingRestoreStorePurchases>>>\n export type BillingRestoreStorePurchasesMutationBody = BodyType<BillingIdentityWrite>\n export type BillingRestoreStorePurchasesMutationError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>\n export type BillingRestoreStorePurchasesMutationVariables = {data: BodyType<BillingIdentityWrite>}\n\n /**\n * @summary Restore the current profile's mobile purchases\n */\nexport const useBillingRestoreStorePurchases = <TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>,\n TContext = unknown>(options?: { mutation?:UseMutationOptions<Awaited<ReturnType<typeof billingRestoreStorePurchases>>, TError,BillingRestoreStorePurchasesMutationVariables, TContext>, request?: SecondParameter<typeof request>}\n , queryClient?: QueryClient): UseMutationResult<\n Awaited<ReturnType<typeof billingRestoreStorePurchases>>,\n TError,\n BillingRestoreStorePurchasesMutationVariables,\n TContext\n > => {\n return useMutation(getBillingRestoreStorePurchasesMutationOptions(options), queryClient);\n }\n export const getBillingListSubscriptionsUrl = (params?: BillingListSubscriptionsParams,) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? 'null' : String(value))\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0 ? `/billing/subscriptions?${stringifiedParams}` : `/billing/subscriptions`\n}\n\n/**\n * List local subscription projections, newest first. No provider refresh occurs. autoRenew=null means renewal is unknown, and unknown historical price/currency remain null; use explicit reconciliation or store restoration to obtain current evidence. Uses the authenticated independent profile in the Biblio product context; support impersonation is refused. Responses are private and must not be cached.\n * @summary List the current profile's subscriptions\n */\nexport const billingListSubscriptions = async (params?: BillingListSubscriptionsParams, options?: Parameters<typeof request>[1]): Promise<BillingSubscriptionPage> => {\n\n return request<BillingSubscriptionPage>(getBillingListSubscriptionsUrl(params),\n {\n ...options,\n method: 'GET'\n\n\n }\n);}\n\n\n\n\n\nexport const getBillingListSubscriptionsQueryKey = (params?: BillingListSubscriptionsParams,) => {\n return [\n `/billing/subscriptions`, ...(params ? [params] : [])\n ] as const;\n }\n\n\nexport const getBillingListSubscriptionsQueryOptions = <TData = Awaited<ReturnType<typeof billingListSubscriptions>>, TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>>(params?: BillingListSubscriptionsParams, options?: { query?:Partial<UseQueryOptions<Awaited<ReturnType<typeof billingListSubscriptions>>, TError, TData>>, request?: SecondParameter<typeof request>}\n) => {\n\nconst {query: queryOptions, request: requestOptions} = options ?? {};\n\n const queryKey = queryOptions?.queryKey ?? getBillingListSubscriptionsQueryKey(params);\n\n\n\n const queryFn: QueryFunction<Awaited<ReturnType<typeof billingListSubscriptions>>> = ({ signal }) => billingListSubscriptions(params, { signal, ...requestOptions });\n\n\n\n\n\n return { queryKey, queryFn, ...queryOptions} as UseQueryOptions<Awaited<ReturnType<typeof billingListSubscriptions>>, TError, TData> & { queryKey: DataTag<QueryKey, TData, TError> }\n}\n\nexport type BillingListSubscriptionsQueryResult = NonNullable<Awaited<ReturnType<typeof billingListSubscriptions>>>\nexport type BillingListSubscriptionsQueryError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>\n\n\nexport function useBillingListSubscriptions<TData = Awaited<ReturnType<typeof billingListSubscriptions>>, TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>>(\n params: undefined | BillingListSubscriptionsParams, options: { query:Partial<UseQueryOptions<Awaited<ReturnType<typeof billingListSubscriptions>>, TError, TData>> & Pick<\n DefinedInitialDataOptions<\n Awaited<ReturnType<typeof billingListSubscriptions>>,\n TError,\n Awaited<ReturnType<typeof billingListSubscriptions>>\n > , 'initialData'\n >, request?: SecondParameter<typeof request>}\n , queryClient?: QueryClient\n ): DefinedUseQueryResult<TData, TError> & { queryKey: DataTag<QueryKey, TData, TError> }\nexport function useBillingListSubscriptions<TData = Awaited<ReturnType<typeof billingListSubscriptions>>, TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>>(\n params?: BillingListSubscriptionsParams, options?: { query?:Partial<UseQueryOptions<Awaited<ReturnType<typeof billingListSubscriptions>>, TError, TData>> & Pick<\n UndefinedInitialDataOptions<\n Awaited<ReturnType<typeof billingListSubscriptions>>,\n TError,\n Awaited<ReturnType<typeof billingListSubscriptions>>\n > , 'initialData'\n >, request?: SecondParameter<typeof request>}\n , queryClient?: QueryClient\n ): UseQueryResult<TData, TError> & { queryKey: DataTag<QueryKey, TData, TError> }\nexport function useBillingListSubscriptions<TData = Awaited<ReturnType<typeof billingListSubscriptions>>, TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>>(\n params?: BillingListSubscriptionsParams, options?: { query?:Partial<UseQueryOptions<Awaited<ReturnType<typeof billingListSubscriptions>>, TError, TData>>, request?: SecondParameter<typeof request>}\n , queryClient?: QueryClient\n ): UseQueryResult<TData, TError> & { queryKey: DataTag<QueryKey, TData, TError> }\n/**\n * @summary List the current profile's subscriptions\n */\n\nexport function useBillingListSubscriptions<TData = Awaited<ReturnType<typeof billingListSubscriptions>>, TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>>(\n params?: BillingListSubscriptionsParams, options?: { query?:Partial<UseQueryOptions<Awaited<ReturnType<typeof billingListSubscriptions>>, TError, TData>>, request?: SecondParameter<typeof request>}\n , queryClient?: QueryClient\n ): UseQueryResult<TData, TError> & { queryKey: DataTag<QueryKey, TData, TError> } {\n\n const queryOptions = getBillingListSubscriptionsQueryOptions(params,options)\n\n const query = useQuery(queryOptions, queryClient) as UseQueryResult<TData, TError> & { queryKey: DataTag<QueryKey, TData, TError> };\n\n return withQueryKey(query, queryOptions.queryKey);\n}\n\n\n\n\n\n\nexport const getBillingReadSubscriptionUrl = (subscriptionId: number,) => {\n\n\n\n\n return `/billing/subscriptions/${subscriptionId}`\n}\n\n/**\n * Read the local subscription and its known access, price and renewal terms. managementUrl is provided for mobile store subscriptions. This GET neither refreshes receipts nor changes renewal. Uses the authenticated independent profile in the Biblio product context; support impersonation is refused. Responses are private and must not be cached.\n * @summary Read the current profile's subscription\n */\nexport const billingReadSubscription = async (subscriptionId: number, options?: Parameters<typeof request>[1]): Promise<BillingSubscriptionRead> => {\n\n return request<BillingSubscriptionRead>(getBillingReadSubscriptionUrl(subscriptionId),\n {\n ...options,\n method: 'GET'\n\n\n }\n);}\n\n\n\n\n\nexport const getBillingReadSubscriptionQueryKey = (subscriptionId: number,) => {\n return [\n `/billing/subscriptions/${subscriptionId}`\n ] as const;\n }\n\n\nexport const getBillingReadSubscriptionQueryOptions = <TData = Awaited<ReturnType<typeof billingReadSubscription>>, TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>>(subscriptionId: number, options?: { query?:Partial<UseQueryOptions<Awaited<ReturnType<typeof billingReadSubscription>>, TError, TData>>, request?: SecondParameter<typeof request>}\n) => {\n\nconst {query: queryOptions, request: requestOptions} = options ?? {};\n\n const queryKey = queryOptions?.queryKey ?? getBillingReadSubscriptionQueryKey(subscriptionId);\n\n\n\n const queryFn: QueryFunction<Awaited<ReturnType<typeof billingReadSubscription>>> = ({ signal }) => billingReadSubscription(subscriptionId, { signal, ...requestOptions });\n\n\n\n\n\n return { queryKey, queryFn, enabled: subscriptionId !== null && subscriptionId !== undefined, ...queryOptions} as UseQueryOptions<Awaited<ReturnType<typeof billingReadSubscription>>, TError, TData> & { queryKey: DataTag<QueryKey, TData, TError> }\n}\n\nexport type BillingReadSubscriptionQueryResult = NonNullable<Awaited<ReturnType<typeof billingReadSubscription>>>\nexport type BillingReadSubscriptionQueryError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>\n\n\nexport function useBillingReadSubscription<TData = Awaited<ReturnType<typeof billingReadSubscription>>, TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>>(\n subscriptionId: number, options: { query:Partial<UseQueryOptions<Awaited<ReturnType<typeof billingReadSubscription>>, TError, TData>> & Pick<\n DefinedInitialDataOptions<\n Awaited<ReturnType<typeof billingReadSubscription>>,\n TError,\n Awaited<ReturnType<typeof billingReadSubscription>>\n > , 'initialData'\n >, request?: SecondParameter<typeof request>}\n , queryClient?: QueryClient\n ): DefinedUseQueryResult<TData, TError> & { queryKey: DataTag<QueryKey, TData, TError> }\nexport function useBillingReadSubscription<TData = Awaited<ReturnType<typeof billingReadSubscription>>, TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>>(\n subscriptionId: number, options?: { query?:Partial<UseQueryOptions<Awaited<ReturnType<typeof billingReadSubscription>>, TError, TData>> & Pick<\n UndefinedInitialDataOptions<\n Awaited<ReturnType<typeof billingReadSubscription>>,\n TError,\n Awaited<ReturnType<typeof billingReadSubscription>>\n > , 'initialData'\n >, request?: SecondParameter<typeof request>}\n , queryClient?: QueryClient\n ): UseQueryResult<TData, TError> & { queryKey: DataTag<QueryKey, TData, TError> }\nexport function useBillingReadSubscription<TData = Awaited<ReturnType<typeof billingReadSubscription>>, TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>>(\n subscriptionId: number, options?: { query?:Partial<UseQueryOptions<Awaited<ReturnType<typeof billingReadSubscription>>, TError, TData>>, request?: SecondParameter<typeof request>}\n , queryClient?: QueryClient\n ): UseQueryResult<TData, TError> & { queryKey: DataTag<QueryKey, TData, TError> }\n/**\n * @summary Read the current profile's subscription\n */\n\nexport function useBillingReadSubscription<TData = Awaited<ReturnType<typeof billingReadSubscription>>, TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>>(\n subscriptionId: number, options?: { query?:Partial<UseQueryOptions<Awaited<ReturnType<typeof billingReadSubscription>>, TError, TData>>, request?: SecondParameter<typeof request>}\n , queryClient?: QueryClient\n ): UseQueryResult<TData, TError> & { queryKey: DataTag<QueryKey, TData, TError> } {\n\n const queryOptions = getBillingReadSubscriptionQueryOptions(subscriptionId,options)\n\n const query = useQuery(queryOptions, queryClient) as UseQueryResult<TData, TError> & { queryKey: DataTag<QueryKey, TData, TError> };\n\n return withQueryKey(query, queryOptions.queryKey);\n}\n\n\n\n\n\n\nexport const getBillingCancelSubscriptionUrl = (subscriptionId: number,) => {\n\n\n\n\n return `/billing/subscriptions/${subscriptionId}/cancel`\n}\n\n/**\n * Cancel Braintree renewal and project the provider-confirmed access end, or cancel a local fixed subscription. Existing paid access follows the confirmed period. Optional feedback is stored separately. Mobile store renewal must be managed through managementUrl; this operation returns 409 for stores. Uses the authenticated independent profile in the Biblio product context; support impersonation is refused. Responses are private and must not be cached. Requires high-assurance authentication.\n * @summary Cancel a personal subscription's renewal\n */\nexport const billingCancelSubscription = async (subscriptionId: number,\n billingCancelWrite: BillingCancelWrite, options?: Parameters<typeof request>[1]): Promise<BillingSubscriptionRead> => {\n\n const getHeaders = (h?: NonNullable<RequestInit['headers']>): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Symbol.iterator in h) {\n return Object.fromEntries(\n Array.from(h as Iterable<Iterable<string>>, (entry) => Array.from(entry) as [string, string]),\n );\n }\n const headers: Record<string, string | readonly string[]> = {};\n for (const [name, value] of Object.entries<string | readonly string[] | undefined>(h)) {\n if (value !== undefined) headers[name] = value;\n }\n return headers;\n };\nreturn request<BillingSubscriptionRead>(getBillingCancelSubscriptionUrl(subscriptionId),\n {\n ...options,\n method: 'POST',\n headers: { 'Content-Type': 'application/json', ...getHeaders(options?.headers) },\n body: JSON.stringify(billingCancelWrite)\n }\n);}\n\n\n\n\n\nexport const getBillingCancelSubscriptionMutationKey = () => ['billingCancelSubscription'] as const;\n\nexport const getBillingCancelSubscriptionMutationOptions = <TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>,\n TContext = unknown>(options?: { mutation?:UseMutationOptions<Awaited<ReturnType<typeof billingCancelSubscription>>, TError,BillingCancelSubscriptionMutationVariables, TContext>, request?: SecondParameter<typeof request>}\n): UseMutationOptions<Awaited<ReturnType<typeof billingCancelSubscription>>, TError,BillingCancelSubscriptionMutationVariables, TContext> => {\n\nconst mutationKey = getBillingCancelSubscriptionMutationKey();\nconst {mutation: mutationOptions, request: requestOptions} = options ?\n options.mutation && 'mutationKey' in options.mutation && options.mutation.mutationKey ?\n options\n : {...options, mutation: {...options.mutation, mutationKey}}\n : {mutation: { mutationKey, }, request: undefined};\n\n\n\n\n const mutationFn: MutationFunction<Awaited<ReturnType<typeof billingCancelSubscription>>, BillingCancelSubscriptionMutationVariables> = (props) => {\n const {subscriptionId,data} = props ?? {};\n\n return billingCancelSubscription(subscriptionId,data,requestOptions)\n }\n\n\n\n\n\n\n return { mutationFn, ...mutationOptions }}\n\n export type BillingCancelSubscriptionMutationResult = NonNullable<Awaited<ReturnType<typeof billingCancelSubscription>>>\n export type BillingCancelSubscriptionMutationBody = BodyType<BillingCancelWrite>\n export type BillingCancelSubscriptionMutationError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>\n export type BillingCancelSubscriptionMutationVariables = {subscriptionId: number;data: BodyType<BillingCancelWrite>}\n\n /**\n * @summary Cancel a personal subscription's renewal\n */\nexport const useBillingCancelSubscription = <TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>,\n TContext = unknown>(options?: { mutation?:UseMutationOptions<Awaited<ReturnType<typeof billingCancelSubscription>>, TError,BillingCancelSubscriptionMutationVariables, TContext>, request?: SecondParameter<typeof request>}\n , queryClient?: QueryClient): UseMutationResult<\n Awaited<ReturnType<typeof billingCancelSubscription>>,\n TError,\n BillingCancelSubscriptionMutationVariables,\n TContext\n > => {\n return useMutation(getBillingCancelSubscriptionMutationOptions(options), queryClient);\n }\n export const getBillingCancellationFeedbackUrl = (subscriptionId: number,\n params?: BillingCancellationFeedbackParams,) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? 'null' : String(value))\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0 ? `/billing/subscriptions/${subscriptionId}/cancellation-feedback?${stringifiedParams}` : `/billing/subscriptions/${subscriptionId}/cancellation-feedback`\n}\n\n/**\n * List only this profile's recorded cancellation feedback for the owned subscription, newest first. Missing historical answers and dates stay null. Feedback is not evidence of current provider renewal state. Uses the authenticated independent profile in the Biblio product context; support impersonation is refused. Responses are private and must not be cached.\n * @summary List an owned subscription's cancellation feedback\n */\nexport const billingCancellationFeedback = async (subscriptionId: number,\n params?: BillingCancellationFeedbackParams, options?: Parameters<typeof request>[1]): Promise<BillingCancellationFeedbackPage> => {\n\n return request<BillingCancellationFeedbackPage>(getBillingCancellationFeedbackUrl(subscriptionId,params),\n {\n ...options,\n method: 'GET'\n\n\n }\n);}\n\n\n\n\n\nexport const getBillingCancellationFeedbackQueryKey = (subscriptionId: number,\n params?: BillingCancellationFeedbackParams,) => {\n return [\n `/billing/subscriptions/${subscriptionId}/cancellation-feedback`, ...(params ? [params] : [])\n ] as const;\n }\n\n\nexport const getBillingCancellationFeedbackQueryOptions = <TData = Awaited<ReturnType<typeof billingCancellationFeedback>>, TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>>(subscriptionId: number,\n params?: BillingCancellationFeedbackParams, options?: { query?:Partial<UseQueryOptions<Awaited<ReturnType<typeof billingCancellationFeedback>>, TError, TData>>, request?: SecondParameter<typeof request>}\n) => {\n\nconst {query: queryOptions, request: requestOptions} = options ?? {};\n\n const queryKey = queryOptions?.queryKey ?? getBillingCancellationFeedbackQueryKey(subscriptionId,params);\n\n\n\n const queryFn: QueryFunction<Awaited<ReturnType<typeof billingCancellationFeedback>>> = ({ signal }) => billingCancellationFeedback(subscriptionId,params, { signal, ...requestOptions });\n\n\n\n\n\n return { queryKey, queryFn, enabled: subscriptionId !== null && subscriptionId !== undefined, ...queryOptions} as UseQueryOptions<Awaited<ReturnType<typeof billingCancellationFeedback>>, TError, TData> & { queryKey: DataTag<QueryKey, TData, TError> }\n}\n\nexport type BillingCancellationFeedbackQueryResult = NonNullable<Awaited<ReturnType<typeof billingCancellationFeedback>>>\nexport type BillingCancellationFeedbackQueryError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>\n\n\nexport function useBillingCancellationFeedback<TData = Awaited<ReturnType<typeof billingCancellationFeedback>>, TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>>(\n subscriptionId: number,\n params: undefined | BillingCancellationFeedbackParams, options: { query:Partial<UseQueryOptions<Awaited<ReturnType<typeof billingCancellationFeedback>>, TError, TData>> & Pick<\n DefinedInitialDataOptions<\n Awaited<ReturnType<typeof billingCancellationFeedback>>,\n TError,\n Awaited<ReturnType<typeof billingCancellationFeedback>>\n > , 'initialData'\n >, request?: SecondParameter<typeof request>}\n , queryClient?: QueryClient\n ): DefinedUseQueryResult<TData, TError> & { queryKey: DataTag<QueryKey, TData, TError> }\nexport function useBillingCancellationFeedback<TData = Awaited<ReturnType<typeof billingCancellationFeedback>>, TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>>(\n subscriptionId: number,\n params?: BillingCancellationFeedbackParams, options?: { query?:Partial<UseQueryOptions<Awaited<ReturnType<typeof billingCancellationFeedback>>, TError, TData>> & Pick<\n UndefinedInitialDataOptions<\n Awaited<ReturnType<typeof billingCancellationFeedback>>,\n TError,\n Awaited<ReturnType<typeof billingCancellationFeedback>>\n > , 'initialData'\n >, request?: SecondParameter<typeof request>}\n , queryClient?: QueryClient\n ): UseQueryResult<TData, TError> & { queryKey: DataTag<QueryKey, TData, TError> }\nexport function useBillingCancellationFeedback<TData = Awaited<ReturnType<typeof billingCancellationFeedback>>, TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>>(\n subscriptionId: number,\n params?: BillingCancellationFeedbackParams, options?: { query?:Partial<UseQueryOptions<Awaited<ReturnType<typeof billingCancellationFeedback>>, TError, TData>>, request?: SecondParameter<typeof request>}\n , queryClient?: QueryClient\n ): UseQueryResult<TData, TError> & { queryKey: DataTag<QueryKey, TData, TError> }\n/**\n * @summary List an owned subscription's cancellation feedback\n */\n\nexport function useBillingCancellationFeedback<TData = Awaited<ReturnType<typeof billingCancellationFeedback>>, TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>>(\n subscriptionId: number,\n params?: BillingCancellationFeedbackParams, options?: { query?:Partial<UseQueryOptions<Awaited<ReturnType<typeof billingCancellationFeedback>>, TError, TData>>, request?: SecondParameter<typeof request>}\n , queryClient?: QueryClient\n ): UseQueryResult<TData, TError> & { queryKey: DataTag<QueryKey, TData, TError> } {\n\n const queryOptions = getBillingCancellationFeedbackQueryOptions(subscriptionId,params,options)\n\n const query = useQuery(queryOptions, queryClient) as UseQueryResult<TData, TError> & { queryKey: DataTag<QueryKey, TData, TError> };\n\n return withQueryKey(query, queryOptions.queryKey);\n}\n\n\n\n\n\n\nexport const getBillingSubscriptionClientTokenUrl = (subscriptionId: number,) => {\n\n\n\n\n return `/billing/subscriptions/${subscriptionId}/client-token`\n}\n\n/**\n * Initialize payment-method collection for an owned Braintree subscription whose renewal is confirmed active. Unknown renewal must be reconciled first; store and nonrenewing subscriptions are not editable here. Uses the authenticated independent profile in the Biblio product context; support impersonation is refused. Responses are private and must not be cached. Requires high-assurance authentication.\n * @summary Create a subscription payment-method token\n */\nexport const billingSubscriptionClientToken = async (subscriptionId: number, options?: Parameters<typeof request>[1]): Promise<BillingClientTokenRead> => {\n\n return request<BillingClientTokenRead>(getBillingSubscriptionClientTokenUrl(subscriptionId),\n {\n ...options,\n method: 'POST'\n\n\n }\n);}\n\n\n\n\n\nexport const getBillingSubscriptionClientTokenMutationKey = () => ['billingSubscriptionClientToken'] as const;\n\nexport const getBillingSubscriptionClientTokenMutationOptions = <TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>,\n TContext = unknown>(options?: { mutation?:UseMutationOptions<Awaited<ReturnType<typeof billingSubscriptionClientToken>>, TError,BillingSubscriptionClientTokenMutationVariables, TContext>, request?: SecondParameter<typeof request>}\n): UseMutationOptions<Awaited<ReturnType<typeof billingSubscriptionClientToken>>, TError,BillingSubscriptionClientTokenMutationVariables, TContext> => {\n\nconst mutationKey = getBillingSubscriptionClientTokenMutationKey();\nconst {mutation: mutationOptions, request: requestOptions} = options ?\n options.mutation && 'mutationKey' in options.mutation && options.mutation.mutationKey ?\n options\n : {...options, mutation: {...options.mutation, mutationKey}}\n : {mutation: { mutationKey, }, request: undefined};\n\n\n\n\n const mutationFn: MutationFunction<Awaited<ReturnType<typeof billingSubscriptionClientToken>>, BillingSubscriptionClientTokenMutationVariables> = (props) => {\n const {subscriptionId} = props ?? {};\n\n return billingSubscriptionClientToken(subscriptionId,requestOptions)\n }\n\n\n\n\n\n\n return { mutationFn, ...mutationOptions }}\n\n export type BillingSubscriptionClientTokenMutationResult = NonNullable<Awaited<ReturnType<typeof billingSubscriptionClientToken>>>\n\n export type BillingSubscriptionClientTokenMutationError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>\n export type BillingSubscriptionClientTokenMutationVariables = {subscriptionId: number}\n\n /**\n * @summary Create a subscription payment-method token\n */\nexport const useBillingSubscriptionClientToken = <TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>,\n TContext = unknown>(options?: { mutation?:UseMutationOptions<Awaited<ReturnType<typeof billingSubscriptionClientToken>>, TError,BillingSubscriptionClientTokenMutationVariables, TContext>, request?: SecondParameter<typeof request>}\n , queryClient?: QueryClient): UseMutationResult<\n Awaited<ReturnType<typeof billingSubscriptionClientToken>>,\n TError,\n BillingSubscriptionClientTokenMutationVariables,\n TContext\n > => {\n return useMutation(getBillingSubscriptionClientTokenMutationOptions(options), queryClient);\n }\n export const getBillingSubscriptionHistoryUrl = (subscriptionId: number,\n params?: BillingSubscriptionHistoryParams,) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? 'null' : String(value))\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0 ? `/billing/subscriptions/${subscriptionId}/history?${stringifiedParams}` : `/billing/subscriptions/${subscriptionId}/history`\n}\n\n/**\n * List preserved subscription events, newest local identifier first. Source status and transactionType are evidence labels, not current renewal guarantees. Unknown source times remain null with clockBasis; amount may also be null and this projection does not supply a currency. Uses the authenticated independent profile in the Biblio product context; support impersonation is refused. Responses are private and must not be cached.\n * @summary List an owned subscription's source events\n */\nexport const billingSubscriptionHistory = async (subscriptionId: number,\n params?: BillingSubscriptionHistoryParams, options?: Parameters<typeof request>[1]): Promise<BillingSubscriptionHistoryPage> => {\n\n return request<BillingSubscriptionHistoryPage>(getBillingSubscriptionHistoryUrl(subscriptionId,params),\n {\n ...options,\n method: 'GET'\n\n\n }\n);}\n\n\n\n\n\nexport const getBillingSubscriptionHistoryQueryKey = (subscriptionId: number,\n params?: BillingSubscriptionHistoryParams,) => {\n return [\n `/billing/subscriptions/${subscriptionId}/history`, ...(params ? [params] : [])\n ] as const;\n }\n\n\nexport const getBillingSubscriptionHistoryQueryOptions = <TData = Awaited<ReturnType<typeof billingSubscriptionHistory>>, TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>>(subscriptionId: number,\n params?: BillingSubscriptionHistoryParams, options?: { query?:Partial<UseQueryOptions<Awaited<ReturnType<typeof billingSubscriptionHistory>>, TError, TData>>, request?: SecondParameter<typeof request>}\n) => {\n\nconst {query: queryOptions, request: requestOptions} = options ?? {};\n\n const queryKey = queryOptions?.queryKey ?? getBillingSubscriptionHistoryQueryKey(subscriptionId,params);\n\n\n\n const queryFn: QueryFunction<Awaited<ReturnType<typeof billingSubscriptionHistory>>> = ({ signal }) => billingSubscriptionHistory(subscriptionId,params, { signal, ...requestOptions });\n\n\n\n\n\n return { queryKey, queryFn, enabled: subscriptionId !== null && subscriptionId !== undefined, ...queryOptions} as UseQueryOptions<Awaited<ReturnType<typeof billingSubscriptionHistory>>, TError, TData> & { queryKey: DataTag<QueryKey, TData, TError> }\n}\n\nexport type BillingSubscriptionHistoryQueryResult = NonNullable<Awaited<ReturnType<typeof billingSubscriptionHistory>>>\nexport type BillingSubscriptionHistoryQueryError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>\n\n\nexport function useBillingSubscriptionHistory<TData = Awaited<ReturnType<typeof billingSubscriptionHistory>>, TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>>(\n subscriptionId: number,\n params: undefined | BillingSubscriptionHistoryParams, options: { query:Partial<UseQueryOptions<Awaited<ReturnType<typeof billingSubscriptionHistory>>, TError, TData>> & Pick<\n DefinedInitialDataOptions<\n Awaited<ReturnType<typeof billingSubscriptionHistory>>,\n TError,\n Awaited<ReturnType<typeof billingSubscriptionHistory>>\n > , 'initialData'\n >, request?: SecondParameter<typeof request>}\n , queryClient?: QueryClient\n ): DefinedUseQueryResult<TData, TError> & { queryKey: DataTag<QueryKey, TData, TError> }\nexport function useBillingSubscriptionHistory<TData = Awaited<ReturnType<typeof billingSubscriptionHistory>>, TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>>(\n subscriptionId: number,\n params?: BillingSubscriptionHistoryParams, options?: { query?:Partial<UseQueryOptions<Awaited<ReturnType<typeof billingSubscriptionHistory>>, TError, TData>> & Pick<\n UndefinedInitialDataOptions<\n Awaited<ReturnType<typeof billingSubscriptionHistory>>,\n TError,\n Awaited<ReturnType<typeof billingSubscriptionHistory>>\n > , 'initialData'\n >, request?: SecondParameter<typeof request>}\n , queryClient?: QueryClient\n ): UseQueryResult<TData, TError> & { queryKey: DataTag<QueryKey, TData, TError> }\nexport function useBillingSubscriptionHistory<TData = Awaited<ReturnType<typeof billingSubscriptionHistory>>, TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>>(\n subscriptionId: number,\n params?: BillingSubscriptionHistoryParams, options?: { query?:Partial<UseQueryOptions<Awaited<ReturnType<typeof billingSubscriptionHistory>>, TError, TData>>, request?: SecondParameter<typeof request>}\n , queryClient?: QueryClient\n ): UseQueryResult<TData, TError> & { queryKey: DataTag<QueryKey, TData, TError> }\n/**\n * @summary List an owned subscription's source events\n */\n\nexport function useBillingSubscriptionHistory<TData = Awaited<ReturnType<typeof billingSubscriptionHistory>>, TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>>(\n subscriptionId: number,\n params?: BillingSubscriptionHistoryParams, options?: { query?:Partial<UseQueryOptions<Awaited<ReturnType<typeof billingSubscriptionHistory>>, TError, TData>>, request?: SecondParameter<typeof request>}\n , queryClient?: QueryClient\n ): UseQueryResult<TData, TError> & { queryKey: DataTag<QueryKey, TData, TError> } {\n\n const queryOptions = getBillingSubscriptionHistoryQueryOptions(subscriptionId,params,options)\n\n const query = useQuery(queryOptions, queryClient) as UseQueryResult<TData, TError> & { queryKey: DataTag<QueryKey, TData, TError> };\n\n return withQueryKey(query, queryOptions.queryKey);\n}\n\n\n\n\n\n\nexport const getBillingUpdatePaymentMethodUrl = (subscriptionId: number,) => {\n\n\n\n\n return `/billing/subscriptions/${subscriptionId}/payment-method`\n}\n\n/**\n * Use a new provider SDK nonce to update the current profile's renewing Braintree subscription and apply the returned receipt. acceptedOutstandingBalance explicitly allows collection of an outstanding balance; it defaults to false. Store subscriptions use their original provider. Uses the authenticated independent profile in the Biblio product context; support impersonation is refused. Responses are private and must not be cached. Requires high-assurance authentication.\n * @summary Update a renewing subscription's payment method\n */\nexport const billingUpdatePaymentMethod = async (subscriptionId: number,\n billingPaymentMethodWrite: BillingPaymentMethodWrite, options?: Parameters<typeof request>[1]): Promise<BillingSubscriptionRead> => {\n\n const getHeaders = (h?: NonNullable<RequestInit['headers']>): Record<string, string | readonly string[]> => {\n if (!h) return {};\n if (h instanceof Headers) return Object.fromEntries(h.entries());\n if (Symbol.iterator in h) {\n return Object.fromEntries(\n Array.from(h as Iterable<Iterable<string>>, (entry) => Array.from(entry) as [string, string]),\n );\n }\n const headers: Record<string, string | readonly string[]> = {};\n for (const [name, value] of Object.entries<string | readonly string[] | undefined>(h)) {\n if (value !== undefined) headers[name] = value;\n }\n return headers;\n };\nreturn request<BillingSubscriptionRead>(getBillingUpdatePaymentMethodUrl(subscriptionId),\n {\n ...options,\n method: 'PUT',\n headers: { 'Content-Type': 'application/json', ...getHeaders(options?.headers) },\n body: JSON.stringify(billingPaymentMethodWrite)\n }\n);}\n\n\n\n\n\nexport const getBillingUpdatePaymentMethodMutationKey = () => ['billingUpdatePaymentMethod'] as const;\n\nexport const getBillingUpdatePaymentMethodMutationOptions = <TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>,\n TContext = unknown>(options?: { mutation?:UseMutationOptions<Awaited<ReturnType<typeof billingUpdatePaymentMethod>>, TError,BillingUpdatePaymentMethodMutationVariables, TContext>, request?: SecondParameter<typeof request>}\n): UseMutationOptions<Awaited<ReturnType<typeof billingUpdatePaymentMethod>>, TError,BillingUpdatePaymentMethodMutationVariables, TContext> => {\n\nconst mutationKey = getBillingUpdatePaymentMethodMutationKey();\nconst {mutation: mutationOptions, request: requestOptions} = options ?\n options.mutation && 'mutationKey' in options.mutation && options.mutation.mutationKey ?\n options\n : {...options, mutation: {...options.mutation, mutationKey}}\n : {mutation: { mutationKey, }, request: undefined};\n\n\n\n\n const mutationFn: MutationFunction<Awaited<ReturnType<typeof billingUpdatePaymentMethod>>, BillingUpdatePaymentMethodMutationVariables> = (props) => {\n const {subscriptionId,data} = props ?? {};\n\n return billingUpdatePaymentMethod(subscriptionId,data,requestOptions)\n }\n\n\n\n\n\n\n return { mutationFn, ...mutationOptions }}\n\n export type BillingUpdatePaymentMethodMutationResult = NonNullable<Awaited<ReturnType<typeof billingUpdatePaymentMethod>>>\n export type BillingUpdatePaymentMethodMutationBody = BodyType<BillingPaymentMethodWrite>\n export type BillingUpdatePaymentMethodMutationError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>\n export type BillingUpdatePaymentMethodMutationVariables = {subscriptionId: number;data: BodyType<BillingPaymentMethodWrite>}\n\n /**\n * @summary Update a renewing subscription's payment method\n */\nexport const useBillingUpdatePaymentMethod = <TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>,\n TContext = unknown>(options?: { mutation?:UseMutationOptions<Awaited<ReturnType<typeof billingUpdatePaymentMethod>>, TError,BillingUpdatePaymentMethodMutationVariables, TContext>, request?: SecondParameter<typeof request>}\n , queryClient?: QueryClient): UseMutationResult<\n Awaited<ReturnType<typeof billingUpdatePaymentMethod>>,\n TError,\n BillingUpdatePaymentMethodMutationVariables,\n TContext\n > => {\n return useMutation(getBillingUpdatePaymentMethodMutationOptions(options), queryClient);\n }\n export const getBillingReconcileSubscriptionUrl = (subscriptionId: number,) => {\n\n\n\n\n return `/billing/subscriptions/${subscriptionId}/reconcile`\n}\n\n/**\n * Read the existing Braintree subscription, refresh authoritative renewal/access terms and project shared contract access. The existing provider identity and current billing environment must match. Use store restoration for App Store and Play Store subscriptions. Uses the authenticated independent profile in the Biblio product context; support impersonation is refused. Responses are private and must not be cached. Requires high-assurance authentication.\n * @summary Refresh a Braintree subscription from its receipt\n */\nexport const billingReconcileSubscription = async (subscriptionId: number, options?: Parameters<typeof request>[1]): Promise<BillingSubscriptionRead> => {\n\n return request<BillingSubscriptionRead>(getBillingReconcileSubscriptionUrl(subscriptionId),\n {\n ...options,\n method: 'POST'\n\n\n }\n);}\n\n\n\n\n\nexport const getBillingReconcileSubscriptionMutationKey = () => ['billingReconcileSubscription'] as const;\n\nexport const getBillingReconcileSubscriptionMutationOptions = <TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>,\n TContext = unknown>(options?: { mutation?:UseMutationOptions<Awaited<ReturnType<typeof billingReconcileSubscription>>, TError,BillingReconcileSubscriptionMutationVariables, TContext>, request?: SecondParameter<typeof request>}\n): UseMutationOptions<Awaited<ReturnType<typeof billingReconcileSubscription>>, TError,BillingReconcileSubscriptionMutationVariables, TContext> => {\n\nconst mutationKey = getBillingReconcileSubscriptionMutationKey();\nconst {mutation: mutationOptions, request: requestOptions} = options ?\n options.mutation && 'mutationKey' in options.mutation && options.mutation.mutationKey ?\n options\n : {...options, mutation: {...options.mutation, mutationKey}}\n : {mutation: { mutationKey, }, request: undefined};\n\n\n\n\n const mutationFn: MutationFunction<Awaited<ReturnType<typeof billingReconcileSubscription>>, BillingReconcileSubscriptionMutationVariables> = (props) => {\n const {subscriptionId} = props ?? {};\n\n return billingReconcileSubscription(subscriptionId,requestOptions)\n }\n\n\n\n\n\n\n return { mutationFn, ...mutationOptions }}\n\n export type BillingReconcileSubscriptionMutationResult = NonNullable<Awaited<ReturnType<typeof billingReconcileSubscription>>>\n\n export type BillingReconcileSubscriptionMutationError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>\n export type BillingReconcileSubscriptionMutationVariables = {subscriptionId: number}\n\n /**\n * @summary Refresh a Braintree subscription from its receipt\n */\nexport const useBillingReconcileSubscription = <TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>,\n TContext = unknown>(options?: { mutation?:UseMutationOptions<Awaited<ReturnType<typeof billingReconcileSubscription>>, TError,BillingReconcileSubscriptionMutationVariables, TContext>, request?: SecondParameter<typeof request>}\n , queryClient?: QueryClient): UseMutationResult<\n Awaited<ReturnType<typeof billingReconcileSubscription>>,\n TError,\n BillingReconcileSubscriptionMutationVariables,\n TContext\n > => {\n return useMutation(getBillingReconcileSubscriptionMutationOptions(options), queryClient);\n }\n export const getBillingListTransactionsUrl = (params?: BillingListTransactionsParams,) => {\n const normalizedParams = new URLSearchParams();\n\n Object.entries(params || {}).forEach(([key, value]) => {\n\n if (value !== undefined) {\n normalizedParams.append(key, value === null ? 'null' : String(value))\n }\n });\n\n const stringifiedParams = normalizedParams.toString();\n\n return stringifiedParams.length > 0 ? `/billing/transactions?${stringifiedParams}` : `/billing/transactions`\n}\n\n/**\n * List private native and imported transactions, newest local identifier first. Historical timestamps, money and currency remain null when unverified. amountBasis distinguishes verified_receipt, historical_provider_evidence and unknown. listedAmountBeforeDiscount and calculatedAmountAfterDiscount preserve source arithmetic; they must not be presented as confirmed paid amounts. clockBasis describes time evidence. Uses the authenticated independent profile in the Biblio product context; support impersonation is refused. Responses are private and must not be cached.\n * @summary List the current profile's payment history\n */\nexport const billingListTransactions = async (params?: BillingListTransactionsParams, options?: Parameters<typeof request>[1]): Promise<BillingTransactionPage> => {\n\n return request<BillingTransactionPage>(getBillingListTransactionsUrl(params),\n {\n ...options,\n method: 'GET'\n\n\n }\n);}\n\n\n\n\n\nexport const getBillingListTransactionsQueryKey = (params?: BillingListTransactionsParams,) => {\n return [\n `/billing/transactions`, ...(params ? [params] : [])\n ] as const;\n }\n\n\nexport const getBillingListTransactionsQueryOptions = <TData = Awaited<ReturnType<typeof billingListTransactions>>, TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>>(params?: BillingListTransactionsParams, options?: { query?:Partial<UseQueryOptions<Awaited<ReturnType<typeof billingListTransactions>>, TError, TData>>, request?: SecondParameter<typeof request>}\n) => {\n\nconst {query: queryOptions, request: requestOptions} = options ?? {};\n\n const queryKey = queryOptions?.queryKey ?? getBillingListTransactionsQueryKey(params);\n\n\n\n const queryFn: QueryFunction<Awaited<ReturnType<typeof billingListTransactions>>> = ({ signal }) => billingListTransactions(params, { signal, ...requestOptions });\n\n\n\n\n\n return { queryKey, queryFn, ...queryOptions} as UseQueryOptions<Awaited<ReturnType<typeof billingListTransactions>>, TError, TData> & { queryKey: DataTag<QueryKey, TData, TError> }\n}\n\nexport type BillingListTransactionsQueryResult = NonNullable<Awaited<ReturnType<typeof billingListTransactions>>>\nexport type BillingListTransactionsQueryError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>\n\n\nexport function useBillingListTransactions<TData = Awaited<ReturnType<typeof billingListTransactions>>, TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>>(\n params: undefined | BillingListTransactionsParams, options: { query:Partial<UseQueryOptions<Awaited<ReturnType<typeof billingListTransactions>>, TError, TData>> & Pick<\n DefinedInitialDataOptions<\n Awaited<ReturnType<typeof billingListTransactions>>,\n TError,\n Awaited<ReturnType<typeof billingListTransactions>>\n > , 'initialData'\n >, request?: SecondParameter<typeof request>}\n , queryClient?: QueryClient\n ): DefinedUseQueryResult<TData, TError> & { queryKey: DataTag<QueryKey, TData, TError> }\nexport function useBillingListTransactions<TData = Awaited<ReturnType<typeof billingListTransactions>>, TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>>(\n params?: BillingListTransactionsParams, options?: { query?:Partial<UseQueryOptions<Awaited<ReturnType<typeof billingListTransactions>>, TError, TData>> & Pick<\n UndefinedInitialDataOptions<\n Awaited<ReturnType<typeof billingListTransactions>>,\n TError,\n Awaited<ReturnType<typeof billingListTransactions>>\n > , 'initialData'\n >, request?: SecondParameter<typeof request>}\n , queryClient?: QueryClient\n ): UseQueryResult<TData, TError> & { queryKey: DataTag<QueryKey, TData, TError> }\nexport function useBillingListTransactions<TData = Awaited<ReturnType<typeof billingListTransactions>>, TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>>(\n params?: BillingListTransactionsParams, options?: { query?:Partial<UseQueryOptions<Awaited<ReturnType<typeof billingListTransactions>>, TError, TData>>, request?: SecondParameter<typeof request>}\n , queryClient?: QueryClient\n ): UseQueryResult<TData, TError> & { queryKey: DataTag<QueryKey, TData, TError> }\n/**\n * @summary List the current profile's payment history\n */\n\nexport function useBillingListTransactions<TData = Awaited<ReturnType<typeof billingListTransactions>>, TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>>(\n params?: BillingListTransactionsParams, options?: { query?:Partial<UseQueryOptions<Awaited<ReturnType<typeof billingListTransactions>>, TError, TData>>, request?: SecondParameter<typeof request>}\n , queryClient?: QueryClient\n ): UseQueryResult<TData, TError> & { queryKey: DataTag<QueryKey, TData, TError> } {\n\n const queryOptions = getBillingListTransactionsQueryOptions(params,options)\n\n const query = useQuery(queryOptions, queryClient) as UseQueryResult<TData, TError> & { queryKey: DataTag<QueryKey, TData, TError> };\n\n return withQueryKey(query, queryOptions.queryKey);\n}\n\n\n\n\n\n\nexport const getBillingReadTransactionUrl = (transactionId: number,) => {\n\n\n\n\n return `/billing/transactions/${transactionId}`\n}\n\n/**\n * Return one transaction belonging to the authenticated profile. Historical timestamps, money and currency remain null when unverified. amountBasis distinguishes verified_receipt, historical_provider_evidence and unknown. listedAmountBeforeDiscount and calculatedAmountAfterDiscount preserve source arithmetic; they must not be presented as confirmed paid amounts. clockBasis describes time evidence. Uses the authenticated independent profile in the Biblio product context; support impersonation is refused. Responses are private and must not be cached.\n * @summary Read an owned transaction's payment evidence\n */\nexport const billingReadTransaction = async (transactionId: number, options?: Parameters<typeof request>[1]): Promise<BillingTransactionRead> => {\n\n return request<BillingTransactionRead>(getBillingReadTransactionUrl(transactionId),\n {\n ...options,\n method: 'GET'\n\n\n }\n);}\n\n\n\n\n\nexport const getBillingReadTransactionQueryKey = (transactionId: number,) => {\n return [\n `/billing/transactions/${transactionId}`\n ] as const;\n }\n\n\nexport const getBillingReadTransactionQueryOptions = <TData = Awaited<ReturnType<typeof billingReadTransaction>>, TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>>(transactionId: number, options?: { query?:Partial<UseQueryOptions<Awaited<ReturnType<typeof billingReadTransaction>>, TError, TData>>, request?: SecondParameter<typeof request>}\n) => {\n\nconst {query: queryOptions, request: requestOptions} = options ?? {};\n\n const queryKey = queryOptions?.queryKey ?? getBillingReadTransactionQueryKey(transactionId);\n\n\n\n const queryFn: QueryFunction<Awaited<ReturnType<typeof billingReadTransaction>>> = ({ signal }) => billingReadTransaction(transactionId, { signal, ...requestOptions });\n\n\n\n\n\n return { queryKey, queryFn, enabled: transactionId !== null && transactionId !== undefined, ...queryOptions} as UseQueryOptions<Awaited<ReturnType<typeof billingReadTransaction>>, TError, TData> & { queryKey: DataTag<QueryKey, TData, TError> }\n}\n\nexport type BillingReadTransactionQueryResult = NonNullable<Awaited<ReturnType<typeof billingReadTransaction>>>\nexport type BillingReadTransactionQueryError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>\n\n\nexport function useBillingReadTransaction<TData = Awaited<ReturnType<typeof billingReadTransaction>>, TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>>(\n transactionId: number, options: { query:Partial<UseQueryOptions<Awaited<ReturnType<typeof billingReadTransaction>>, TError, TData>> & Pick<\n DefinedInitialDataOptions<\n Awaited<ReturnType<typeof billingReadTransaction>>,\n TError,\n Awaited<ReturnType<typeof billingReadTransaction>>\n > , 'initialData'\n >, request?: SecondParameter<typeof request>}\n , queryClient?: QueryClient\n ): DefinedUseQueryResult<TData, TError> & { queryKey: DataTag<QueryKey, TData, TError> }\nexport function useBillingReadTransaction<TData = Awaited<ReturnType<typeof billingReadTransaction>>, TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>>(\n transactionId: number, options?: { query?:Partial<UseQueryOptions<Awaited<ReturnType<typeof billingReadTransaction>>, TError, TData>> & Pick<\n UndefinedInitialDataOptions<\n Awaited<ReturnType<typeof billingReadTransaction>>,\n TError,\n Awaited<ReturnType<typeof billingReadTransaction>>\n > , 'initialData'\n >, request?: SecondParameter<typeof request>}\n , queryClient?: QueryClient\n ): UseQueryResult<TData, TError> & { queryKey: DataTag<QueryKey, TData, TError> }\nexport function useBillingReadTransaction<TData = Awaited<ReturnType<typeof billingReadTransaction>>, TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>>(\n transactionId: number, options?: { query?:Partial<UseQueryOptions<Awaited<ReturnType<typeof billingReadTransaction>>, TError, TData>>, request?: SecondParameter<typeof request>}\n , queryClient?: QueryClient\n ): UseQueryResult<TData, TError> & { queryKey: DataTag<QueryKey, TData, TError> }\n/**\n * @summary Read an owned transaction's payment evidence\n */\n\nexport function useBillingReadTransaction<TData = Awaited<ReturnType<typeof billingReadTransaction>>, TError = ErrorType<HTTPExceptionResponse | ValidationErrorResponse>>(\n transactionId: number, options?: { query?:Partial<UseQueryOptions<Awaited<ReturnType<typeof billingReadTransaction>>, TError, TData>>, request?: SecondParameter<typeof request>}\n , queryClient?: QueryClient\n ): UseQueryResult<TData, TError> & { queryKey: DataTag<QueryKey, TData, TError> } {\n\n const queryOptions = getBillingReadTransactionQueryOptions(transactionId,options)\n\n const query = useQuery(queryOptions, queryClient) as UseQueryResult<TData, TError> & { queryKey: DataTag<QueryKey, TData, TError> };\n\n return withQueryKey(query, queryOptions.queryKey);\n}\n\n\n\n\n\n\n"],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
|
|
2
|
-
import {
|
|
2
|
+
import { Ap as ContentRead, Kr as ListEditorsParams, Mp as ContentPage, Mt as ReadCatalogThemeParams, Nt as ReadCatalogParams, Xc as EditorDetailRead, Zr as LikeRead, a as ValidationErrorResponse, bt as ReadPackParams, em as CatalogRead, fc as HTTPExceptionResponse, ht as ReadRecommendationsParams, jt as ReadEditorParams, mt as RecommendationsRead, qc as EditorListRead, qr as ListContentsParams, sr as PackDetailRead, va as LearningPathDetailRead } from "../chunks/index.js";
|
|
3
3
|
import { a as ErrorType, c as request } from "../chunks/client.js";
|
|
4
4
|
import { DataTag, DefinedInitialDataOptions, DefinedUseQueryResult, QueryClient, QueryKey, UndefinedInitialDataOptions, UseMutationOptions, UseMutationResult, UseQueryOptions, UseQueryResult } from "@tanstack/react-query";
|
|
5
5
|
//#region src/react/biblio-catalogue/biblio-catalogue.d.ts
|
|
@@ -7,7 +7,7 @@ import { useMutation, useQuery } from "@tanstack/react-query";
|
|
|
7
7
|
* Do not edit manually.
|
|
8
8
|
* Mozaik backend
|
|
9
9
|
* Four products behind one API — Biblio, Médiathèques, the partner catalogues (Nextory and YouScribe) and Prof Express. Authentication is Keycloak SSO only, once, for all of them: see the **auth** section below for the browser flow and the three failure modes.
|
|
10
|
-
* OpenAPI spec version: 0.
|
|
10
|
+
* OpenAPI spec version: 0.13.0
|
|
11
11
|
*/
|
|
12
12
|
const withQueryKey = (query, queryKey) => {
|
|
13
13
|
const result = { queryKey };
|