@sovity.de/edc-client 16.0.0 → 16.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"sovity-edc-client.umd.cjs","sources":["../src/generated/runtime.ts","../src/generated/models/AssetFilterConstraintOperator.ts","../src/generated/models/AssetFilterConstraint.ts","../src/generated/models/DataSourceAvailability.ts","../src/generated/models/UiAssetExtForSphinx.ts","../src/generated/models/UiAsset.ts","../src/generated/models/AssetListPage.ts","../src/generated/models/AssetListSortProperty.ts","../src/generated/models/TableColumnSortAssetListSortProperty.ts","../src/generated/models/AssetListPageFilter.ts","../src/generated/models/BuildInfo.ts","../src/generated/models/BusinessPartnerGroupCreateSubmit.ts","../src/generated/models/BusinessPartnerGroupEditPage.ts","../src/generated/models/BusinessPartnerGroupEditSubmit.ts","../src/generated/models/BusinessPartnerGroupListPageEntry.ts","../src/generated/models/BusinessPartnerGroupQuery.ts","../src/generated/models/CallbackAddressEventType.ts","../src/generated/models/CallbackAddressDto.ts","../src/generated/models/CatalogFilterExpressionLiteralType.ts","../src/generated/models/CatalogFilterExpressionLiteral.ts","../src/generated/models/CatalogFilterExpressionOperator.ts","../src/generated/models/CatalogFilterExpression.ts","../src/generated/models/CatalogQuery.ts","../src/generated/models/CatalogSortByDirection.ts","../src/generated/models/CatalogSortBy.ts","../src/generated/models/CatalogQueryV2.ts","../src/generated/models/ConnectorLimits.ts","../src/generated/models/ContractAgreementDirection.ts","../src/generated/models/ContractTerminatedBy.ts","../src/generated/models/ContractAgreementTerminationInfo.ts","../src/generated/models/TransferProcessSimplifiedState.ts","../src/generated/models/TransferProcessState.ts","../src/generated/models/ContractAgreementTransferProcess.ts","../src/generated/models/ContractTerminationStatus.ts","../src/generated/models/OperatorDto.ts","../src/generated/models/UiPolicyLiteralType.ts","../src/generated/models/UiPolicyLiteral.ts","../src/generated/models/UiPolicyConstraint.ts","../src/generated/models/UiPolicyExpressionType.ts","../src/generated/models/UiPolicyExpression.ts","../src/generated/models/UiPolicy.ts","../src/generated/models/ContractAgreementCard.ts","../src/generated/models/ContractAgreementPage.ts","../src/generated/models/ContractAgreementPageQuery.ts","../src/generated/models/UiCriterionLiteralType.ts","../src/generated/models/UiCriterionLiteral.ts","../src/generated/models/UiCriterionOperator.ts","../src/generated/models/UiCriterion.ts","../src/generated/models/ContractDefinitionEntry.ts","../src/generated/models/ContractDefinitionPage.ts","../src/generated/models/ContractDefinitionRequest.ts","../src/generated/models/ContractNegotiationRequest.ts","../src/generated/models/ContractNegotiationSimplifiedState.ts","../src/generated/models/ContractNegotiationState.ts","../src/generated/models/ContractNegotiationStateResult.ts","../src/generated/models/ContractTerminationRequest.ts","../src/generated/models/DashboardCxDidConfig.ts","../src/generated/models/DashboardDapsConfig.ts","../src/generated/models/DashboardTransferAmounts.ts","../src/generated/models/DashboardPage.ts","../src/generated/models/DataOfferPublishType.ts","../src/generated/models/DataSourceType.ts","../src/generated/models/UiDataSourceHttpDataMethod.ts","../src/generated/models/UiHttpAuthApiKey.ts","../src/generated/models/UiHttpAuthBasic.ts","../src/generated/models/UiHttpOauth2AuthType.ts","../src/generated/models/UiHttpOauth2PrivateKeyAuthorization.ts","../src/generated/models/UiHttpOauth2SharedSecretAuthorization.ts","../src/generated/models/UiHttpAuthOauth2.ts","../src/generated/models/UiHttpAuthType.ts","../src/generated/models/UiHttpAuth.ts","../src/generated/models/UiDataSourceHttpData.ts","../src/generated/models/UiDataSourceOnRequest.ts","../src/generated/models/UiDataSource.ts","../src/generated/models/UiAssetCreateRequest.ts","../src/generated/models/DataOfferCreateRequest.ts","../src/generated/models/EdrDto.ts","../src/generated/models/IdAvailabilityResponse.ts","../src/generated/models/IdResponseDto.ts","../src/generated/models/InitiateCustomTransferRequest.ts","../src/generated/models/InitiateTransferRequest.ts","../src/generated/models/TransferProcessStatesDto.ts","../src/generated/models/KpiResult.ts","../src/generated/models/NegotiateAllQuery.ts","../src/generated/models/NegotiateAllResult.ts","../src/generated/models/PolicyDefinitionCreateDto.ts","../src/generated/models/UiPolicyCreateRequest.ts","../src/generated/models/PolicyDefinitionCreateRequest.ts","../src/generated/models/PolicyDefinitionDto.ts","../src/generated/models/PolicyDefinitionPage.ts","../src/generated/models/TransferHistoryEntry.ts","../src/generated/models/TransferHistoryPage.ts","../src/generated/models/TransferProcessStateResult.ts","../src/generated/models/UiAssetEditRequest.ts","../src/generated/models/UiConfigFeature.ts","../src/generated/models/UiConfigPreconfiguredCounterparty.ts","../src/generated/models/UiConfig.ts","../src/generated/models/UiContractNegotiation.ts","../src/generated/models/UiContractOffer.ts","../src/generated/models/UiDataOffer.ts","../src/generated/models/UiDataSinkHttpDataPushMethod.ts","../src/generated/models/UiHttpPushAuthType.ts","../src/generated/models/UiHttpPushAuth.ts","../src/generated/models/UiDataSinkHttpDataPush.ts","../src/generated/models/UiInitiateTransferType.ts","../src/generated/models/UiInitiateTransferRequest.ts","../src/generated/models/VaultSecretCreateSubmit.ts","../src/generated/models/VaultSecretEditPage.ts","../src/generated/models/VaultSecretEditSubmit.ts","../src/generated/models/VaultSecretListPageEntry.ts","../src/generated/models/VaultSecretQuery.ts","../src/generated/apis/EnterpriseEditionApi.ts","../src/generated/apis/UIApi.ts","../src/generated/apis/UseCaseApi.ts","../node_modules/zod/lib/index.mjs","../src/oauth2/utils/HttpUtils.ts","../src/oauth2/utils/FetchUtils.ts","../src/oauth2/AccessTokenService.ts","../src/oauth2/utils/RequestUtils.ts","../src/oauth2/Middleware.ts","../src/EdcClient.ts"],"sourcesContent":["/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n/* eslint-disable */\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\nexport const BASE_PATH = 'https://my-connector/api/management'.replace(\n /\\/+$/,\n '',\n);\n\nexport interface ConfigurationParameters {\n basePath?: string; // override base path\n fetchApi?: FetchAPI; // override for fetch implementation\n middleware?: Middleware[]; // middleware to apply before/after fetch requests\n queryParamsStringify?: (params: HTTPQuery) => string; // stringify function for query strings\n username?: string; // parameter for basic security\n password?: string; // parameter for basic security\n apiKey?:\n | string\n | Promise<string>\n | ((name: string) => string | Promise<string>); // parameter for apiKey security\n accessToken?:\n | string\n | Promise<string>\n | ((name?: string, scopes?: string[]) => string | Promise<string>); // parameter for oauth2 security\n headers?: HTTPHeaders; //header params we want to use on every request\n credentials?: RequestCredentials; //value for the credentials param we want to use on each request\n}\n\nexport class Configuration {\n constructor(private configuration: ConfigurationParameters = {}) {}\n\n set config(configuration: Configuration) {\n this.configuration = configuration;\n }\n\n get basePath(): string {\n return this.configuration.basePath != null\n ? this.configuration.basePath\n : BASE_PATH;\n }\n\n get fetchApi(): FetchAPI | undefined {\n return this.configuration.fetchApi;\n }\n\n get middleware(): Middleware[] {\n return this.configuration.middleware || [];\n }\n\n get queryParamsStringify(): (params: HTTPQuery) => string {\n return this.configuration.queryParamsStringify || querystring;\n }\n\n get username(): string | undefined {\n return this.configuration.username;\n }\n\n get password(): string | undefined {\n return this.configuration.password;\n }\n\n get apiKey(): ((name: string) => string | Promise<string>) | undefined {\n const apiKey = this.configuration.apiKey;\n if (apiKey) {\n return typeof apiKey === 'function' ? apiKey : () => apiKey;\n }\n return undefined;\n }\n\n get accessToken():\n | ((name?: string, scopes?: string[]) => string | Promise<string>)\n | undefined {\n const accessToken = this.configuration.accessToken;\n if (accessToken) {\n return typeof accessToken === 'function'\n ? accessToken\n : async () => accessToken;\n }\n return undefined;\n }\n\n get headers(): HTTPHeaders | undefined {\n return this.configuration.headers;\n }\n\n get credentials(): RequestCredentials | undefined {\n return this.configuration.credentials;\n }\n}\n\nexport const DefaultConfig = new Configuration();\n\n/**\n * This is the base class for all generated API classes.\n */\nexport class BaseAPI {\n private static readonly jsonRegex = new RegExp(\n '^(:?application/json|[^;/ \\t]+/[^;/ \\t]+[+]json)[ \\t]*(:?;.*)?$',\n 'i',\n );\n private middleware: Middleware[];\n\n constructor(protected configuration = DefaultConfig) {\n this.middleware = configuration.middleware;\n }\n\n withMiddleware<T extends BaseAPI>(this: T, ...middlewares: Middleware[]) {\n const next = this.clone<T>();\n next.middleware = next.middleware.concat(...middlewares);\n return next;\n }\n\n withPreMiddleware<T extends BaseAPI>(\n this: T,\n ...preMiddlewares: Array<Middleware['pre']>\n ) {\n const middlewares = preMiddlewares.map((pre) => ({pre}));\n return this.withMiddleware<T>(...middlewares);\n }\n\n withPostMiddleware<T extends BaseAPI>(\n this: T,\n ...postMiddlewares: Array<Middleware['post']>\n ) {\n const middlewares = postMiddlewares.map((post) => ({post}));\n return this.withMiddleware<T>(...middlewares);\n }\n\n /**\n * Check if the given MIME is a JSON MIME.\n * JSON MIME examples:\n * application/json\n * application/json; charset=UTF8\n * APPLICATION/JSON\n * application/vnd.company+json\n * @param mime - MIME (Multipurpose Internet Mail Extensions)\n * @return True if the given MIME is JSON, false otherwise.\n */\n protected isJsonMime(mime: string | null | undefined): boolean {\n if (!mime) {\n return false;\n }\n return BaseAPI.jsonRegex.test(mime);\n }\n\n protected async request(\n context: RequestOpts,\n initOverrides?: RequestInit | InitOverrideFunction,\n ): Promise<Response> {\n const {url, init} = await this.createFetchParams(\n context,\n initOverrides,\n );\n const response = await this.fetchApi(url, init);\n if (response && response.status >= 200 && response.status < 300) {\n return response;\n }\n throw new ResponseError(response, 'Response returned an error code');\n }\n\n private async createFetchParams(\n context: RequestOpts,\n initOverrides?: RequestInit | InitOverrideFunction,\n ) {\n let url = this.configuration.basePath + context.path;\n if (\n context.query !== undefined &&\n Object.keys(context.query).length !== 0\n ) {\n // only add the querystring to the URL if there are query parameters.\n // this is done to avoid urls ending with a \"?\" character which buggy webservers\n // do not handle correctly sometimes.\n url += '?' + this.configuration.queryParamsStringify(context.query);\n }\n\n const headers = Object.assign(\n {},\n this.configuration.headers,\n context.headers,\n );\n Object.keys(headers).forEach((key) =>\n headers[key] === undefined ? delete headers[key] : {},\n );\n\n const initOverrideFn =\n typeof initOverrides === 'function'\n ? initOverrides\n : async () => initOverrides;\n\n const initParams = {\n method: context.method,\n headers,\n body: context.body,\n credentials: this.configuration.credentials,\n };\n\n const overriddenInit: RequestInit = {\n ...initParams,\n ...(await initOverrideFn({\n init: initParams,\n context,\n })),\n };\n\n let body: any;\n if (\n isFormData(overriddenInit.body) ||\n overriddenInit.body instanceof URLSearchParams ||\n isBlob(overriddenInit.body)\n ) {\n body = overriddenInit.body;\n } else if (this.isJsonMime(headers['Content-Type'])) {\n body = JSON.stringify(overriddenInit.body);\n } else {\n body = overriddenInit.body;\n }\n\n const init: RequestInit = {\n ...overriddenInit,\n body,\n };\n\n return {url, init};\n }\n\n private fetchApi = async (url: string, init: RequestInit) => {\n let fetchParams = {url, init};\n for (const middleware of this.middleware) {\n if (middleware.pre) {\n fetchParams =\n (await middleware.pre({\n fetch: this.fetchApi,\n ...fetchParams,\n })) || fetchParams;\n }\n }\n let response: Response | undefined = undefined;\n try {\n response = await (this.configuration.fetchApi || fetch)(\n fetchParams.url,\n fetchParams.init,\n );\n } catch (e) {\n for (const middleware of this.middleware) {\n if (middleware.onError) {\n response =\n (await middleware.onError({\n fetch: this.fetchApi,\n url: fetchParams.url,\n init: fetchParams.init,\n error: e,\n response: response ? response.clone() : undefined,\n })) || response;\n }\n }\n if (response === undefined) {\n if (e instanceof Error) {\n throw new FetchError(\n e,\n 'The request failed and the interceptors did not return an alternative response',\n );\n } else {\n throw e;\n }\n }\n }\n for (const middleware of this.middleware) {\n if (middleware.post) {\n response =\n (await middleware.post({\n fetch: this.fetchApi,\n url: fetchParams.url,\n init: fetchParams.init,\n response: response.clone(),\n })) || response;\n }\n }\n return response;\n };\n\n /**\n * Create a shallow clone of `this` by constructing a new instance\n * and then shallow cloning data members.\n */\n private clone<T extends BaseAPI>(this: T): T {\n const constructor = this.constructor as any;\n const next = new constructor(this.configuration);\n next.middleware = this.middleware.slice();\n return next;\n }\n}\n\nfunction isBlob(value: any): value is Blob {\n return typeof Blob !== 'undefined' && value instanceof Blob;\n}\n\nfunction isFormData(value: any): value is FormData {\n return typeof FormData !== 'undefined' && value instanceof FormData;\n}\n\nexport class ResponseError extends Error {\n override name: 'ResponseError' = 'ResponseError';\n constructor(public response: Response, msg?: string) {\n super(msg);\n }\n}\n\nexport class FetchError extends Error {\n override name: 'FetchError' = 'FetchError';\n constructor(public cause: Error, msg?: string) {\n super(msg);\n }\n}\n\nexport class RequiredError extends Error {\n override name: 'RequiredError' = 'RequiredError';\n constructor(public field: string, msg?: string) {\n super(msg);\n }\n}\n\nexport const COLLECTION_FORMATS = {\n csv: ',',\n ssv: ' ',\n tsv: '\\t',\n pipes: '|',\n};\n\nexport type FetchAPI = WindowOrWorkerGlobalScope['fetch'];\n\nexport type Json = any;\nexport type HTTPMethod =\n | 'GET'\n | 'POST'\n | 'PUT'\n | 'PATCH'\n | 'DELETE'\n | 'OPTIONS'\n | 'HEAD';\nexport type HTTPHeaders = {[key: string]: string};\nexport type HTTPQuery = {\n [key: string]:\n | string\n | number\n | null\n | boolean\n | Array<string | number | null | boolean>\n | Set<string | number | null | boolean>\n | HTTPQuery;\n};\nexport type HTTPBody = Json | FormData | URLSearchParams;\nexport type HTTPRequestInit = {\n headers?: HTTPHeaders;\n method: HTTPMethod;\n credentials?: RequestCredentials;\n body?: HTTPBody;\n};\nexport type ModelPropertyNaming =\n | 'camelCase'\n | 'snake_case'\n | 'PascalCase'\n | 'original';\n\nexport type InitOverrideFunction = (requestContext: {\n init: HTTPRequestInit;\n context: RequestOpts;\n}) => Promise<RequestInit>;\n\nexport interface FetchParams {\n url: string;\n init: RequestInit;\n}\n\nexport interface RequestOpts {\n path: string;\n method: HTTPMethod;\n headers: HTTPHeaders;\n query?: HTTPQuery;\n body?: HTTPBody;\n}\n\nexport function querystring(params: HTTPQuery, prefix: string = ''): string {\n return Object.keys(params)\n .map((key) => querystringSingleKey(key, params[key], prefix))\n .filter((part) => part.length > 0)\n .join('&');\n}\n\nfunction querystringSingleKey(\n key: string,\n value:\n | string\n | number\n | null\n | undefined\n | boolean\n | Array<string | number | null | boolean>\n | Set<string | number | null | boolean>\n | HTTPQuery,\n keyPrefix: string = '',\n): string {\n const fullKey = keyPrefix + (keyPrefix.length ? `[${key}]` : key);\n if (value instanceof Array) {\n const multiValue = value\n .map((singleValue) => encodeURIComponent(String(singleValue)))\n .join(`&${encodeURIComponent(fullKey)}=`);\n return `${encodeURIComponent(fullKey)}=${multiValue}`;\n }\n if (value instanceof Set) {\n const valueAsArray = Array.from(value);\n return querystringSingleKey(key, valueAsArray, keyPrefix);\n }\n if (value instanceof Date) {\n return `${encodeURIComponent(fullKey)}=${encodeURIComponent(\n value.toISOString(),\n )}`;\n }\n if (value instanceof Object) {\n return querystring(value as HTTPQuery, fullKey);\n }\n return `${encodeURIComponent(fullKey)}=${encodeURIComponent(\n String(value),\n )}`;\n}\n\nexport function exists(json: any, key: string) {\n const value = json[key];\n return value !== null && value !== undefined;\n}\n\nexport function mapValues(data: any, fn: (item: any) => any) {\n return Object.keys(data).reduce(\n (acc, key) => ({...acc, [key]: fn(data[key])}),\n {},\n );\n}\n\nexport function canConsumeForm(consumes: Consume[]): boolean {\n for (const consume of consumes) {\n if ('multipart/form-data' === consume.contentType) {\n return true;\n }\n }\n return false;\n}\n\nexport interface Consume {\n contentType: string;\n}\n\nexport interface RequestContext {\n fetch: FetchAPI;\n url: string;\n init: RequestInit;\n}\n\nexport interface ResponseContext {\n fetch: FetchAPI;\n url: string;\n init: RequestInit;\n response: Response;\n}\n\nexport interface ErrorContext {\n fetch: FetchAPI;\n url: string;\n init: RequestInit;\n error: unknown;\n response?: Response;\n}\n\nexport interface Middleware {\n pre?(context: RequestContext): Promise<FetchParams | void>;\n post?(context: ResponseContext): Promise<Response | void>;\n onError?(context: ErrorContext): Promise<Response | void>;\n}\n\nexport interface ApiResponse<T> {\n raw: Response;\n value(): Promise<T>;\n}\n\nexport interface ResponseTransformer<T> {\n (json: any): T;\n}\n\nexport class JSONApiResponse<T> {\n constructor(\n public raw: Response,\n private transformer: ResponseTransformer<T> = (jsonValue: any) =>\n jsonValue,\n ) {}\n\n async value(): Promise<T> {\n return this.transformer(await this.raw.json());\n }\n}\n\nexport class VoidApiResponse {\n constructor(public raw: Response) {}\n\n async value(): Promise<void> {\n return undefined;\n }\n}\n\nexport class BlobApiResponse {\n constructor(public raw: Response) {}\n\n async value(): Promise<Blob> {\n return await this.raw.blob();\n }\n}\n\nexport class TextApiResponse {\n constructor(public raw: Response) {}\n\n async value(): Promise<string> {\n return await this.raw.text();\n }\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n/* eslint-disable */\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n/**\n * Operator for filter expressions\n * @export\n */\nexport const AssetFilterConstraintOperator = {\n Like: 'LIKE',\n Eq: 'EQ',\n In: 'IN',\n} as const;\nexport type AssetFilterConstraintOperator =\n (typeof AssetFilterConstraintOperator)[keyof typeof AssetFilterConstraintOperator];\n\nexport function instanceOfAssetFilterConstraintOperator(value: any): boolean {\n for (const key in AssetFilterConstraintOperator) {\n if (\n Object.prototype.hasOwnProperty.call(\n AssetFilterConstraintOperator,\n key,\n )\n ) {\n if (\n AssetFilterConstraintOperator[\n key as keyof typeof AssetFilterConstraintOperator\n ] === value\n ) {\n return true;\n }\n }\n }\n return false;\n}\n\nexport function AssetFilterConstraintOperatorFromJSON(\n json: any,\n): AssetFilterConstraintOperator {\n return AssetFilterConstraintOperatorFromJSONTyped(json, false);\n}\n\nexport function AssetFilterConstraintOperatorFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): AssetFilterConstraintOperator {\n return json as AssetFilterConstraintOperator;\n}\n\nexport function AssetFilterConstraintOperatorToJSON(\n value?: AssetFilterConstraintOperator | null,\n): any {\n return value as any;\n}\n\nexport function AssetFilterConstraintOperatorToJSONTyped(\n value: any,\n ignoreDiscriminator: boolean,\n): AssetFilterConstraintOperator {\n return value as AssetFilterConstraintOperator;\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {AssetFilterConstraintOperator} from './AssetFilterConstraintOperator';\nimport {\n AssetFilterConstraintOperatorFromJSON,\n AssetFilterConstraintOperatorFromJSONTyped,\n AssetFilterConstraintOperatorToJSON,\n AssetFilterConstraintOperatorToJSONTyped,\n} from './AssetFilterConstraintOperator';\n\n/**\n * Generic expression for filtering the data offers in the catalog\n * @export\n * @interface AssetFilterConstraint\n */\nexport interface AssetFilterConstraint {\n /**\n * Asset property path\n * @type {Array<string>}\n * @memberof AssetFilterConstraint\n */\n assetPropertyPath: Array<string>;\n /**\n * Operator\n * @type {AssetFilterConstraintOperator}\n * @memberof AssetFilterConstraint\n */\n operator: AssetFilterConstraintOperator;\n /**\n * For operators EQ and LIKE. Can contain '%' for operator LIKE.\n * @type {string}\n * @memberof AssetFilterConstraint\n */\n value?: string;\n /**\n * For operator IN.\n * @type {Array<string>}\n * @memberof AssetFilterConstraint\n */\n valueList?: Array<string>;\n}\n\n/**\n * Check if a given object implements the AssetFilterConstraint interface.\n */\nexport function instanceOfAssetFilterConstraint(\n value: any,\n): value is AssetFilterConstraint {\n if (\n !('assetPropertyPath' in value) ||\n value['assetPropertyPath'] === undefined\n )\n return false;\n if (!('operator' in value) || value['operator'] === undefined) return false;\n return true;\n}\n\nexport function AssetFilterConstraintFromJSON(\n json: any,\n): AssetFilterConstraint {\n return AssetFilterConstraintFromJSONTyped(json, false);\n}\n\nexport function AssetFilterConstraintFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): AssetFilterConstraint {\n if (json == null) {\n return json;\n }\n return {\n assetPropertyPath: json['assetPropertyPath'],\n operator: AssetFilterConstraintOperatorFromJSON(json['operator']),\n value: json['value'] == null ? undefined : json['value'],\n valueList: json['valueList'] == null ? undefined : json['valueList'],\n };\n}\n\nexport function AssetFilterConstraintToJSON(json: any): AssetFilterConstraint {\n return AssetFilterConstraintToJSONTyped(json, false);\n}\n\nexport function AssetFilterConstraintToJSONTyped(\n value?: AssetFilterConstraint | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n assetPropertyPath: value['assetPropertyPath'],\n operator: AssetFilterConstraintOperatorToJSON(value['operator']),\n value: value['value'],\n valueList: value['valueList'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n/* eslint-disable */\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n/**\n * Differentiate 'Live' Data Offers that have a real data source from 'On Request' Data Offers that contain only a contact email address for requesting an individual data offer.\n * @export\n */\nexport const DataSourceAvailability = {\n Live: 'LIVE',\n OnRequest: 'ON_REQUEST',\n} as const;\nexport type DataSourceAvailability =\n (typeof DataSourceAvailability)[keyof typeof DataSourceAvailability];\n\nexport function instanceOfDataSourceAvailability(value: any): boolean {\n for (const key in DataSourceAvailability) {\n if (Object.prototype.hasOwnProperty.call(DataSourceAvailability, key)) {\n if (\n DataSourceAvailability[\n key as keyof typeof DataSourceAvailability\n ] === value\n ) {\n return true;\n }\n }\n }\n return false;\n}\n\nexport function DataSourceAvailabilityFromJSON(\n json: any,\n): DataSourceAvailability {\n return DataSourceAvailabilityFromJSONTyped(json, false);\n}\n\nexport function DataSourceAvailabilityFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): DataSourceAvailability {\n return json as DataSourceAvailability;\n}\n\nexport function DataSourceAvailabilityToJSON(\n value?: DataSourceAvailability | null,\n): any {\n return value as any;\n}\n\nexport function DataSourceAvailabilityToJSONTyped(\n value: any,\n ignoreDiscriminator: boolean,\n): DataSourceAvailability {\n return value as DataSourceAvailability;\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\n\n/**\n * Type-safe extra fields for the sphin-x dataspace.\n * @export\n * @interface UiAssetExtForSphinx\n */\nexport interface UiAssetExtForSphinx {\n /**\n * Sphin-X Data Model Name\n * @type {string}\n * @memberof UiAssetExtForSphinx\n */\n dataModelName: string;\n}\n\n/**\n * Check if a given object implements the UiAssetExtForSphinx interface.\n */\nexport function instanceOfUiAssetExtForSphinx(\n value: any,\n): value is UiAssetExtForSphinx {\n if (!('dataModelName' in value) || value['dataModelName'] === undefined)\n return false;\n return true;\n}\n\nexport function UiAssetExtForSphinxFromJSON(json: any): UiAssetExtForSphinx {\n return UiAssetExtForSphinxFromJSONTyped(json, false);\n}\n\nexport function UiAssetExtForSphinxFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): UiAssetExtForSphinx {\n if (json == null) {\n return json;\n }\n return {\n dataModelName: json['dataModelName'],\n };\n}\n\nexport function UiAssetExtForSphinxToJSON(json: any): UiAssetExtForSphinx {\n return UiAssetExtForSphinxToJSONTyped(json, false);\n}\n\nexport function UiAssetExtForSphinxToJSONTyped(\n value?: UiAssetExtForSphinx | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n dataModelName: value['dataModelName'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {DataSourceAvailability} from './DataSourceAvailability';\nimport {\n DataSourceAvailabilityFromJSON,\n DataSourceAvailabilityFromJSONTyped,\n DataSourceAvailabilityToJSON,\n DataSourceAvailabilityToJSONTyped,\n} from './DataSourceAvailability';\nimport type {UiAssetExtForSphinx} from './UiAssetExtForSphinx';\nimport {\n UiAssetExtForSphinxFromJSON,\n UiAssetExtForSphinxFromJSONTyped,\n UiAssetExtForSphinxToJSON,\n UiAssetExtForSphinxToJSONTyped,\n} from './UiAssetExtForSphinx';\n\n/**\n * Type-safe data offer metadata as supported by the sovity product landscape. Contains extension points.\n * @export\n * @interface UiAsset\n */\nexport interface UiAsset {\n /**\n * 'Live' vs 'On Request'\n * @type {DataSourceAvailability}\n * @memberof UiAsset\n */\n dataSourceAvailability: DataSourceAvailability;\n /**\n * Asset Id\n * @type {string}\n * @memberof UiAsset\n */\n assetId: string;\n /**\n * Providing Connector's Connector Endpoint\n * @type {string}\n * @memberof UiAsset\n */\n connectorEndpoint: string;\n /**\n * Providing Connector's Participant ID\n * @type {string}\n * @memberof UiAsset\n */\n participantId: string;\n /**\n * Asset Title\n * @type {string}\n * @memberof UiAsset\n */\n title: string;\n /**\n * Asset Organization Name\n * @type {string}\n * @memberof UiAsset\n */\n creatorOrganizationName: string;\n /**\n * Contact E-Mail address. Only for dataSourceAvailability ON_REQUEST.\n * @type {string}\n * @memberof UiAsset\n */\n onRequestContactEmail?: string;\n /**\n * Contact Preferred E-Mail Subject. Only for dataSourceAvailability ON_REQUEST.\n * @type {string}\n * @memberof UiAsset\n */\n onRequestContactEmailSubject?: string;\n /**\n * Asset Language\n * @type {string}\n * @memberof UiAsset\n */\n language?: string;\n /**\n * Asset Description. Supports markdown.\n * @type {string}\n * @memberof UiAsset\n */\n description?: string;\n /**\n * Asset Description Short Text generated from description. Contains no markdown.\n * @type {string}\n * @memberof UiAsset\n */\n descriptionShortText?: string;\n /**\n * Flag that indicates whether this asset is created by this connector.\n * @type {boolean}\n * @memberof UiAsset\n */\n isOwnConnector: boolean;\n /**\n * Asset Homepage\n * @type {string}\n * @memberof UiAsset\n */\n publisherHomepage?: string;\n /**\n * License URL\n * @type {string}\n * @memberof UiAsset\n */\n licenseUrl?: string;\n /**\n * Version\n * @type {string}\n * @memberof UiAsset\n */\n version?: string;\n /**\n * Asset Keywords\n * @type {Array<string>}\n * @memberof UiAsset\n */\n keywords?: Array<string>;\n /**\n * Asset MediaType\n * @type {string}\n * @memberof UiAsset\n */\n mediaType?: string;\n /**\n * Homepage URL associated with the Asset\n * @type {string}\n * @memberof UiAsset\n */\n landingPageUrl?: string;\n /**\n * HTTP Datasource Hint: Proxy Method. Only for dataSourceAvailability LIVE with an underlying HTTP_DATA Data Source.\n * @type {boolean}\n * @memberof UiAsset\n */\n httpDatasourceHintsProxyMethod?: boolean;\n /**\n * HTTP Datasource Hint: Proxy Path. Only for dataSourceAvailability LIVE with an underlying HTTP_DATA Data Source.\n * @type {boolean}\n * @memberof UiAsset\n */\n httpDatasourceHintsProxyPath?: boolean;\n /**\n * HTTP Datasource Hint: Proxy Query Params. Only for dataSourceAvailability LIVE with an underlying HTTP_DATA Data Source.\n * @type {boolean}\n * @memberof UiAsset\n */\n httpDatasourceHintsProxyQueryParams?: boolean;\n /**\n * HTTP Datasource Hint: Proxy Body. Only for dataSourceAvailability LIVE with an underlying HTTP_DATA Data Source.\n * @type {boolean}\n * @memberof UiAsset\n */\n httpDatasourceHintsProxyBody?: boolean;\n /**\n * Data Model\n * @type {string}\n * @memberof UiAsset\n */\n dataModel?: string;\n /**\n * The sovereign is distinct from the publisher by being the legal owner of the data.\n * @type {string}\n * @memberof UiAsset\n */\n sovereignLegalName?: string;\n /**\n * Data sample URLs\n * @type {Array<string>}\n * @memberof UiAsset\n */\n dataSampleUrls?: Array<string>;\n /**\n * Reference file/schema URLs\n * @type {Array<string>}\n * @memberof UiAsset\n */\n referenceFileUrls?: Array<string>;\n /**\n * Additional information on reference files/schemas\n * @type {string}\n * @memberof UiAsset\n */\n referenceFilesDescription?: string;\n /**\n * Instructions for use that are not legally relevant e.g. information on how to cite the dataset in papers\n * @type {string}\n * @memberof UiAsset\n */\n conditionsForUse?: string;\n /**\n * Data update frequency\n * @type {string}\n * @memberof UiAsset\n */\n dataUpdateFrequency?: string;\n /**\n * Temporal coverage start date\n * @type {Date}\n * @memberof UiAsset\n */\n temporalCoverageFrom?: Date;\n /**\n * Temporal coverage end date (inclusive)\n * @type {Date}\n * @memberof UiAsset\n */\n temporalCoverageToInclusive?: Date;\n /**\n * sphin-x dataspace specific asset metadata fields\n * @type {UiAssetExtForSphinx}\n * @memberof UiAsset\n */\n sphinxFields?: UiAssetExtForSphinx;\n /**\n * Contains the entire asset in the JSON-LD format\n * @type {string}\n * @memberof UiAsset\n */\n assetJsonLd?: string;\n /**\n * Contains serialized custom properties in the JSON format.\n * @type {string}\n * @memberof UiAsset\n */\n customJsonAsString?: string;\n /**\n * Contains serialized custom properties in the JSON LD format. Contrary to the customJsonAsString field, this string must represent a JSON LD object and will be affected by JSON LD compaction and expansion. Due to a technical limitation, the properties can't be booleans.\n * @type {string}\n * @memberof UiAsset\n */\n customJsonLdAsString?: string;\n /**\n * Same as customJsonAsString but the data will be stored in the private properties.\n * @type {string}\n * @memberof UiAsset\n */\n privateCustomJsonAsString?: string;\n /**\n * Same as customJsonLdAsString but the data will be stored in the private properties. The same limitations apply.\n * @type {string}\n * @memberof UiAsset\n */\n privateCustomJsonLdAsString?: string;\n}\n\n/**\n * Check if a given object implements the UiAsset interface.\n */\nexport function instanceOfUiAsset(value: any): value is UiAsset {\n if (\n !('dataSourceAvailability' in value) ||\n value['dataSourceAvailability'] === undefined\n )\n return false;\n if (!('assetId' in value) || value['assetId'] === undefined) return false;\n if (\n !('connectorEndpoint' in value) ||\n value['connectorEndpoint'] === undefined\n )\n return false;\n if (!('participantId' in value) || value['participantId'] === undefined)\n return false;\n if (!('title' in value) || value['title'] === undefined) return false;\n if (\n !('creatorOrganizationName' in value) ||\n value['creatorOrganizationName'] === undefined\n )\n return false;\n if (!('isOwnConnector' in value) || value['isOwnConnector'] === undefined)\n return false;\n return true;\n}\n\nexport function UiAssetFromJSON(json: any): UiAsset {\n return UiAssetFromJSONTyped(json, false);\n}\n\nexport function UiAssetFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): UiAsset {\n if (json == null) {\n return json;\n }\n return {\n dataSourceAvailability: DataSourceAvailabilityFromJSON(\n json['dataSourceAvailability'],\n ),\n assetId: json['assetId'],\n connectorEndpoint: json['connectorEndpoint'],\n participantId: json['participantId'],\n title: json['title'],\n creatorOrganizationName: json['creatorOrganizationName'],\n onRequestContactEmail:\n json['onRequestContactEmail'] == null\n ? undefined\n : json['onRequestContactEmail'],\n onRequestContactEmailSubject:\n json['onRequestContactEmailSubject'] == null\n ? undefined\n : json['onRequestContactEmailSubject'],\n language: json['language'] == null ? undefined : json['language'],\n description:\n json['description'] == null ? undefined : json['description'],\n descriptionShortText:\n json['descriptionShortText'] == null\n ? undefined\n : json['descriptionShortText'],\n isOwnConnector: json['isOwnConnector'],\n publisherHomepage:\n json['publisherHomepage'] == null\n ? undefined\n : json['publisherHomepage'],\n licenseUrl: json['licenseUrl'] == null ? undefined : json['licenseUrl'],\n version: json['version'] == null ? undefined : json['version'],\n keywords: json['keywords'] == null ? undefined : json['keywords'],\n mediaType: json['mediaType'] == null ? undefined : json['mediaType'],\n landingPageUrl:\n json['landingPageUrl'] == null ? undefined : json['landingPageUrl'],\n httpDatasourceHintsProxyMethod:\n json['httpDatasourceHintsProxyMethod'] == null\n ? undefined\n : json['httpDatasourceHintsProxyMethod'],\n httpDatasourceHintsProxyPath:\n json['httpDatasourceHintsProxyPath'] == null\n ? undefined\n : json['httpDatasourceHintsProxyPath'],\n httpDatasourceHintsProxyQueryParams:\n json['httpDatasourceHintsProxyQueryParams'] == null\n ? undefined\n : json['httpDatasourceHintsProxyQueryParams'],\n httpDatasourceHintsProxyBody:\n json['httpDatasourceHintsProxyBody'] == null\n ? undefined\n : json['httpDatasourceHintsProxyBody'],\n dataModel: json['dataModel'] == null ? undefined : json['dataModel'],\n sovereignLegalName:\n json['sovereignLegalName'] == null\n ? undefined\n : json['sovereignLegalName'],\n dataSampleUrls:\n json['dataSampleUrls'] == null ? undefined : json['dataSampleUrls'],\n referenceFileUrls:\n json['referenceFileUrls'] == null\n ? undefined\n : json['referenceFileUrls'],\n referenceFilesDescription:\n json['referenceFilesDescription'] == null\n ? undefined\n : json['referenceFilesDescription'],\n conditionsForUse:\n json['conditionsForUse'] == null\n ? undefined\n : json['conditionsForUse'],\n dataUpdateFrequency:\n json['dataUpdateFrequency'] == null\n ? undefined\n : json['dataUpdateFrequency'],\n temporalCoverageFrom:\n json['temporalCoverageFrom'] == null\n ? undefined\n : new Date(json['temporalCoverageFrom']),\n temporalCoverageToInclusive:\n json['temporalCoverageToInclusive'] == null\n ? undefined\n : new Date(json['temporalCoverageToInclusive']),\n sphinxFields:\n json['sphinxFields'] == null\n ? undefined\n : UiAssetExtForSphinxFromJSON(json['sphinxFields']),\n assetJsonLd:\n json['assetJsonLd'] == null ? undefined : json['assetJsonLd'],\n customJsonAsString:\n json['customJsonAsString'] == null\n ? undefined\n : json['customJsonAsString'],\n customJsonLdAsString:\n json['customJsonLdAsString'] == null\n ? undefined\n : json['customJsonLdAsString'],\n privateCustomJsonAsString:\n json['privateCustomJsonAsString'] == null\n ? undefined\n : json['privateCustomJsonAsString'],\n privateCustomJsonLdAsString:\n json['privateCustomJsonLdAsString'] == null\n ? undefined\n : json['privateCustomJsonLdAsString'],\n };\n}\n\nexport function UiAssetToJSON(json: any): UiAsset {\n return UiAssetToJSONTyped(json, false);\n}\n\nexport function UiAssetToJSONTyped(\n value?: UiAsset | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n dataSourceAvailability: DataSourceAvailabilityToJSON(\n value['dataSourceAvailability'],\n ),\n assetId: value['assetId'],\n connectorEndpoint: value['connectorEndpoint'],\n participantId: value['participantId'],\n title: value['title'],\n creatorOrganizationName: value['creatorOrganizationName'],\n onRequestContactEmail: value['onRequestContactEmail'],\n onRequestContactEmailSubject: value['onRequestContactEmailSubject'],\n language: value['language'],\n description: value['description'],\n descriptionShortText: value['descriptionShortText'],\n isOwnConnector: value['isOwnConnector'],\n publisherHomepage: value['publisherHomepage'],\n licenseUrl: value['licenseUrl'],\n version: value['version'],\n keywords: value['keywords'],\n mediaType: value['mediaType'],\n landingPageUrl: value['landingPageUrl'],\n httpDatasourceHintsProxyMethod: value['httpDatasourceHintsProxyMethod'],\n httpDatasourceHintsProxyPath: value['httpDatasourceHintsProxyPath'],\n httpDatasourceHintsProxyQueryParams:\n value['httpDatasourceHintsProxyQueryParams'],\n httpDatasourceHintsProxyBody: value['httpDatasourceHintsProxyBody'],\n dataModel: value['dataModel'],\n sovereignLegalName: value['sovereignLegalName'],\n dataSampleUrls: value['dataSampleUrls'],\n referenceFileUrls: value['referenceFileUrls'],\n referenceFilesDescription: value['referenceFilesDescription'],\n conditionsForUse: value['conditionsForUse'],\n dataUpdateFrequency: value['dataUpdateFrequency'],\n temporalCoverageFrom:\n value['temporalCoverageFrom'] == null\n ? undefined\n : value['temporalCoverageFrom'].toISOString().substring(0, 10),\n temporalCoverageToInclusive:\n value['temporalCoverageToInclusive'] == null\n ? undefined\n : value['temporalCoverageToInclusive']\n .toISOString()\n .substring(0, 10),\n sphinxFields: UiAssetExtForSphinxToJSON(value['sphinxFields']),\n assetJsonLd: value['assetJsonLd'],\n customJsonAsString: value['customJsonAsString'],\n customJsonLdAsString: value['customJsonLdAsString'],\n privateCustomJsonAsString: value['privateCustomJsonAsString'],\n privateCustomJsonLdAsString: value['privateCustomJsonLdAsString'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {UiAsset} from './UiAsset';\nimport {\n UiAssetFromJSON,\n UiAssetFromJSONTyped,\n UiAssetToJSON,\n UiAssetToJSONTyped,\n} from './UiAsset';\n\n/**\n * All data for the Asset Page\n * @export\n * @interface AssetListPage\n */\nexport interface AssetListPage {\n /**\n * Content of the current page.\n * @type {Array<UiAsset>}\n * @memberof AssetListPage\n */\n content: Array<UiAsset>;\n /**\n * Number of items on all pages.\n * @type {number}\n * @memberof AssetListPage\n */\n totalItems: number;\n /**\n * Index of the last page\n * @type {number}\n * @memberof AssetListPage\n */\n lastPage: number;\n /**\n * Index of the previous page.\n * @type {number}\n * @memberof AssetListPage\n */\n previousPage?: number;\n /**\n * Index of the current page\n * @type {number}\n * @memberof AssetListPage\n */\n currentPage: number;\n /**\n * Index of the next page.\n * @type {number}\n * @memberof AssetListPage\n */\n nextPage?: number;\n /**\n * Index of the item at the start of the current page\n * @type {number}\n * @memberof AssetListPage\n */\n pageStart: number;\n /**\n * Index of the item at the end of the current page\n * @type {number}\n * @memberof AssetListPage\n */\n pageEnd: number;\n /**\n * Index of the next page.\n * @type {number}\n * @memberof AssetListPage\n */\n pageSize: number;\n}\n\n/**\n * Check if a given object implements the AssetListPage interface.\n */\nexport function instanceOfAssetListPage(value: any): value is AssetListPage {\n if (!('content' in value) || value['content'] === undefined) return false;\n if (!('totalItems' in value) || value['totalItems'] === undefined)\n return false;\n if (!('lastPage' in value) || value['lastPage'] === undefined) return false;\n if (!('currentPage' in value) || value['currentPage'] === undefined)\n return false;\n if (!('pageStart' in value) || value['pageStart'] === undefined)\n return false;\n if (!('pageEnd' in value) || value['pageEnd'] === undefined) return false;\n if (!('pageSize' in value) || value['pageSize'] === undefined) return false;\n return true;\n}\n\nexport function AssetListPageFromJSON(json: any): AssetListPage {\n return AssetListPageFromJSONTyped(json, false);\n}\n\nexport function AssetListPageFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): AssetListPage {\n if (json == null) {\n return json;\n }\n return {\n content: (json['content'] as Array<any>).map(UiAssetFromJSON),\n totalItems: json['totalItems'],\n lastPage: json['lastPage'],\n previousPage:\n json['previousPage'] == null ? undefined : json['previousPage'],\n currentPage: json['currentPage'],\n nextPage: json['nextPage'] == null ? undefined : json['nextPage'],\n pageStart: json['pageStart'],\n pageEnd: json['pageEnd'],\n pageSize: json['pageSize'],\n };\n}\n\nexport function AssetListPageToJSON(json: any): AssetListPage {\n return AssetListPageToJSONTyped(json, false);\n}\n\nexport function AssetListPageToJSONTyped(\n value?: AssetListPage | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n content: (value['content'] as Array<any>).map(UiAssetToJSON),\n totalItems: value['totalItems'],\n lastPage: value['lastPage'],\n previousPage: value['previousPage'],\n currentPage: value['currentPage'],\n nextPage: value['nextPage'],\n pageStart: value['pageStart'],\n pageEnd: value['pageEnd'],\n pageSize: value['pageSize'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n/* eslint-disable */\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n/**\n * Properties, for which sorting in the asset list is enabled\n * @export\n */\nexport const AssetListSortProperty = {\n Title: 'TITLE',\n DescriptionShortText: 'DESCRIPTION_SHORT_TEXT',\n} as const;\nexport type AssetListSortProperty =\n (typeof AssetListSortProperty)[keyof typeof AssetListSortProperty];\n\nexport function instanceOfAssetListSortProperty(value: any): boolean {\n for (const key in AssetListSortProperty) {\n if (Object.prototype.hasOwnProperty.call(AssetListSortProperty, key)) {\n if (\n AssetListSortProperty[\n key as keyof typeof AssetListSortProperty\n ] === value\n ) {\n return true;\n }\n }\n }\n return false;\n}\n\nexport function AssetListSortPropertyFromJSON(\n json: any,\n): AssetListSortProperty {\n return AssetListSortPropertyFromJSONTyped(json, false);\n}\n\nexport function AssetListSortPropertyFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): AssetListSortProperty {\n return json as AssetListSortProperty;\n}\n\nexport function AssetListSortPropertyToJSON(\n value?: AssetListSortProperty | null,\n): any {\n return value as any;\n}\n\nexport function AssetListSortPropertyToJSONTyped(\n value: any,\n ignoreDiscriminator: boolean,\n): AssetListSortProperty {\n return value as AssetListSortProperty;\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {AssetListSortProperty} from './AssetListSortProperty';\nimport {\n AssetListSortPropertyFromJSON,\n AssetListSortPropertyFromJSONTyped,\n AssetListSortPropertyToJSON,\n AssetListSortPropertyToJSONTyped,\n} from './AssetListSortProperty';\n\n/**\n * Sort a column by a given property\n * @export\n * @interface TableColumnSortAssetListSortProperty\n */\nexport interface TableColumnSortAssetListSortProperty {\n /**\n * Name of the column to sort for\n * @type {AssetListSortProperty}\n * @memberof TableColumnSortAssetListSortProperty\n */\n columnName: AssetListSortProperty;\n /**\n * Flag whether to sort ascending. If left out, sort ascending\n * @type {boolean}\n * @memberof TableColumnSortAssetListSortProperty\n */\n descending?: boolean;\n}\n\n/**\n * Check if a given object implements the TableColumnSortAssetListSortProperty interface.\n */\nexport function instanceOfTableColumnSortAssetListSortProperty(\n value: any,\n): value is TableColumnSortAssetListSortProperty {\n if (!('columnName' in value) || value['columnName'] === undefined)\n return false;\n return true;\n}\n\nexport function TableColumnSortAssetListSortPropertyFromJSON(\n json: any,\n): TableColumnSortAssetListSortProperty {\n return TableColumnSortAssetListSortPropertyFromJSONTyped(json, false);\n}\n\nexport function TableColumnSortAssetListSortPropertyFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): TableColumnSortAssetListSortProperty {\n if (json == null) {\n return json;\n }\n return {\n columnName: AssetListSortPropertyFromJSON(json['columnName']),\n descending: json['descending'] == null ? undefined : json['descending'],\n };\n}\n\nexport function TableColumnSortAssetListSortPropertyToJSON(\n json: any,\n): TableColumnSortAssetListSortProperty {\n return TableColumnSortAssetListSortPropertyToJSONTyped(json, false);\n}\n\nexport function TableColumnSortAssetListSortPropertyToJSONTyped(\n value?: TableColumnSortAssetListSortProperty | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n columnName: AssetListSortPropertyToJSON(value['columnName']),\n descending: value['descending'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {TableColumnSortAssetListSortProperty} from './TableColumnSortAssetListSortProperty';\nimport {\n TableColumnSortAssetListSortPropertyFromJSON,\n TableColumnSortAssetListSortPropertyFromJSONTyped,\n TableColumnSortAssetListSortPropertyToJSON,\n TableColumnSortAssetListSortPropertyToJSONTyped,\n} from './TableColumnSortAssetListSortProperty';\n\n/**\n * Properties to filter and sort the asset list page table\n * @export\n * @interface AssetListPageFilter\n */\nexport interface AssetListPageFilter {\n /**\n * Query for filtering. If empty, show all entries\n * @type {string}\n * @memberof AssetListPageFilter\n */\n query?: string;\n /**\n * Page Index. Defaults to 0\n * @type {number}\n * @memberof AssetListPageFilter\n */\n page?: number;\n /**\n * Size of each page. If left out, show all entries\n * @type {number}\n * @memberof AssetListPageFilter\n */\n pageSize?: number;\n /**\n * Sort List by properties in order of appearance in the array. If empty, sort by creation date\n * @type {Array<TableColumnSortAssetListSortProperty>}\n * @memberof AssetListPageFilter\n */\n sort?: Array<TableColumnSortAssetListSortProperty>;\n}\n\n/**\n * Check if a given object implements the AssetListPageFilter interface.\n */\nexport function instanceOfAssetListPageFilter(\n value: any,\n): value is AssetListPageFilter {\n return true;\n}\n\nexport function AssetListPageFilterFromJSON(json: any): AssetListPageFilter {\n return AssetListPageFilterFromJSONTyped(json, false);\n}\n\nexport function AssetListPageFilterFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): AssetListPageFilter {\n if (json == null) {\n return json;\n }\n return {\n query: json['query'] == null ? undefined : json['query'],\n page: json['page'] == null ? undefined : json['page'],\n pageSize: json['pageSize'] == null ? undefined : json['pageSize'],\n sort:\n json['sort'] == null\n ? undefined\n : (json['sort'] as Array<any>).map(\n TableColumnSortAssetListSortPropertyFromJSON,\n ),\n };\n}\n\nexport function AssetListPageFilterToJSON(json: any): AssetListPageFilter {\n return AssetListPageFilterToJSONTyped(json, false);\n}\n\nexport function AssetListPageFilterToJSONTyped(\n value?: AssetListPageFilter | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n query: value['query'],\n page: value['page'],\n pageSize: value['pageSize'],\n sort:\n value['sort'] == null\n ? undefined\n : (value['sort'] as Array<any>).map(\n TableColumnSortAssetListSortPropertyToJSON,\n ),\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\n\n/**\n * Build information about the connector backend.\n * @export\n * @interface BuildInfo\n */\nexport interface BuildInfo {\n /**\n * Container build date. May be overridden.\n * @type {string}\n * @memberof BuildInfo\n */\n buildDate: string;\n /**\n * Container build release version or a combination of last tag + commit hash. May be overridden.\n * @type {string}\n * @memberof BuildInfo\n */\n buildVersion: string;\n}\n\n/**\n * Check if a given object implements the BuildInfo interface.\n */\nexport function instanceOfBuildInfo(value: any): value is BuildInfo {\n if (!('buildDate' in value) || value['buildDate'] === undefined)\n return false;\n if (!('buildVersion' in value) || value['buildVersion'] === undefined)\n return false;\n return true;\n}\n\nexport function BuildInfoFromJSON(json: any): BuildInfo {\n return BuildInfoFromJSONTyped(json, false);\n}\n\nexport function BuildInfoFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): BuildInfo {\n if (json == null) {\n return json;\n }\n return {\n buildDate: json['buildDate'],\n buildVersion: json['buildVersion'],\n };\n}\n\nexport function BuildInfoToJSON(json: any): BuildInfo {\n return BuildInfoToJSONTyped(json, false);\n}\n\nexport function BuildInfoToJSONTyped(\n value?: BuildInfo | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n buildDate: value['buildDate'],\n buildVersion: value['buildVersion'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\n\n/**\n * Business Partner Group Create Submit\n * @export\n * @interface BusinessPartnerGroupCreateSubmit\n */\nexport interface BusinessPartnerGroupCreateSubmit {\n /**\n * Business Partner Group ID\n * @type {string}\n * @memberof BusinessPartnerGroupCreateSubmit\n */\n groupId: string;\n /**\n * List of BPNs in the created group\n * @type {Array<string>}\n * @memberof BusinessPartnerGroupCreateSubmit\n */\n businessPartnerNumbers: Array<string>;\n}\n\n/**\n * Check if a given object implements the BusinessPartnerGroupCreateSubmit interface.\n */\nexport function instanceOfBusinessPartnerGroupCreateSubmit(\n value: any,\n): value is BusinessPartnerGroupCreateSubmit {\n if (!('groupId' in value) || value['groupId'] === undefined) return false;\n if (\n !('businessPartnerNumbers' in value) ||\n value['businessPartnerNumbers'] === undefined\n )\n return false;\n return true;\n}\n\nexport function BusinessPartnerGroupCreateSubmitFromJSON(\n json: any,\n): BusinessPartnerGroupCreateSubmit {\n return BusinessPartnerGroupCreateSubmitFromJSONTyped(json, false);\n}\n\nexport function BusinessPartnerGroupCreateSubmitFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): BusinessPartnerGroupCreateSubmit {\n if (json == null) {\n return json;\n }\n return {\n groupId: json['groupId'],\n businessPartnerNumbers: json['businessPartnerNumbers'],\n };\n}\n\nexport function BusinessPartnerGroupCreateSubmitToJSON(\n json: any,\n): BusinessPartnerGroupCreateSubmit {\n return BusinessPartnerGroupCreateSubmitToJSONTyped(json, false);\n}\n\nexport function BusinessPartnerGroupCreateSubmitToJSONTyped(\n value?: BusinessPartnerGroupCreateSubmit | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n groupId: value['groupId'],\n businessPartnerNumbers: value['businessPartnerNumbers'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\n\n/**\n * Business Partner Group Edit Page\n * @export\n * @interface BusinessPartnerGroupEditPage\n */\nexport interface BusinessPartnerGroupEditPage {\n /**\n * Business Partner Group ID\n * @type {string}\n * @memberof BusinessPartnerGroupEditPage\n */\n groupId: string;\n /**\n * List of BPNs in this group\n * @type {Array<string>}\n * @memberof BusinessPartnerGroupEditPage\n */\n businessPartnerNumbers: Array<string>;\n}\n\n/**\n * Check if a given object implements the BusinessPartnerGroupEditPage interface.\n */\nexport function instanceOfBusinessPartnerGroupEditPage(\n value: any,\n): value is BusinessPartnerGroupEditPage {\n if (!('groupId' in value) || value['groupId'] === undefined) return false;\n if (\n !('businessPartnerNumbers' in value) ||\n value['businessPartnerNumbers'] === undefined\n )\n return false;\n return true;\n}\n\nexport function BusinessPartnerGroupEditPageFromJSON(\n json: any,\n): BusinessPartnerGroupEditPage {\n return BusinessPartnerGroupEditPageFromJSONTyped(json, false);\n}\n\nexport function BusinessPartnerGroupEditPageFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): BusinessPartnerGroupEditPage {\n if (json == null) {\n return json;\n }\n return {\n groupId: json['groupId'],\n businessPartnerNumbers: json['businessPartnerNumbers'],\n };\n}\n\nexport function BusinessPartnerGroupEditPageToJSON(\n json: any,\n): BusinessPartnerGroupEditPage {\n return BusinessPartnerGroupEditPageToJSONTyped(json, false);\n}\n\nexport function BusinessPartnerGroupEditPageToJSONTyped(\n value?: BusinessPartnerGroupEditPage | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n groupId: value['groupId'],\n businessPartnerNumbers: value['businessPartnerNumbers'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\n\n/**\n * Business Partner Group Edit Submit\n * @export\n * @interface BusinessPartnerGroupEditSubmit\n */\nexport interface BusinessPartnerGroupEditSubmit {\n /**\n * List of BPNs in the edited group\n * @type {Array<string>}\n * @memberof BusinessPartnerGroupEditSubmit\n */\n businessPartnerNumbers: Array<string>;\n}\n\n/**\n * Check if a given object implements the BusinessPartnerGroupEditSubmit interface.\n */\nexport function instanceOfBusinessPartnerGroupEditSubmit(\n value: any,\n): value is BusinessPartnerGroupEditSubmit {\n if (\n !('businessPartnerNumbers' in value) ||\n value['businessPartnerNumbers'] === undefined\n )\n return false;\n return true;\n}\n\nexport function BusinessPartnerGroupEditSubmitFromJSON(\n json: any,\n): BusinessPartnerGroupEditSubmit {\n return BusinessPartnerGroupEditSubmitFromJSONTyped(json, false);\n}\n\nexport function BusinessPartnerGroupEditSubmitFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): BusinessPartnerGroupEditSubmit {\n if (json == null) {\n return json;\n }\n return {\n businessPartnerNumbers: json['businessPartnerNumbers'],\n };\n}\n\nexport function BusinessPartnerGroupEditSubmitToJSON(\n json: any,\n): BusinessPartnerGroupEditSubmit {\n return BusinessPartnerGroupEditSubmitToJSONTyped(json, false);\n}\n\nexport function BusinessPartnerGroupEditSubmitToJSONTyped(\n value?: BusinessPartnerGroupEditSubmit | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n businessPartnerNumbers: value['businessPartnerNumbers'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\n\n/**\n * Business Partner Group List Page Entry\n * @export\n * @interface BusinessPartnerGroupListPageEntry\n */\nexport interface BusinessPartnerGroupListPageEntry {\n /**\n * Business Partner Group Id\n * @type {string}\n * @memberof BusinessPartnerGroupListPageEntry\n */\n groupId: string;\n /**\n * List of BPNs in this group\n * @type {Array<string>}\n * @memberof BusinessPartnerGroupListPageEntry\n */\n businessPartnerNumbers: Array<string>;\n}\n\n/**\n * Check if a given object implements the BusinessPartnerGroupListPageEntry interface.\n */\nexport function instanceOfBusinessPartnerGroupListPageEntry(\n value: any,\n): value is BusinessPartnerGroupListPageEntry {\n if (!('groupId' in value) || value['groupId'] === undefined) return false;\n if (\n !('businessPartnerNumbers' in value) ||\n value['businessPartnerNumbers'] === undefined\n )\n return false;\n return true;\n}\n\nexport function BusinessPartnerGroupListPageEntryFromJSON(\n json: any,\n): BusinessPartnerGroupListPageEntry {\n return BusinessPartnerGroupListPageEntryFromJSONTyped(json, false);\n}\n\nexport function BusinessPartnerGroupListPageEntryFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): BusinessPartnerGroupListPageEntry {\n if (json == null) {\n return json;\n }\n return {\n groupId: json['groupId'],\n businessPartnerNumbers: json['businessPartnerNumbers'],\n };\n}\n\nexport function BusinessPartnerGroupListPageEntryToJSON(\n json: any,\n): BusinessPartnerGroupListPageEntry {\n return BusinessPartnerGroupListPageEntryToJSONTyped(json, false);\n}\n\nexport function BusinessPartnerGroupListPageEntryToJSONTyped(\n value?: BusinessPartnerGroupListPageEntry | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n groupId: value['groupId'],\n businessPartnerNumbers: value['businessPartnerNumbers'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\n\n/**\n * Query for filtering Business Partner Groups\n * @export\n * @interface BusinessPartnerGroupQuery\n */\nexport interface BusinessPartnerGroupQuery {\n /**\n * Search Query String\n * @type {string}\n * @memberof BusinessPartnerGroupQuery\n */\n searchQuery?: string;\n /**\n * Number of items to display\n * @type {number}\n * @memberof BusinessPartnerGroupQuery\n */\n limit?: number;\n}\n\n/**\n * Check if a given object implements the BusinessPartnerGroupQuery interface.\n */\nexport function instanceOfBusinessPartnerGroupQuery(\n value: any,\n): value is BusinessPartnerGroupQuery {\n return true;\n}\n\nexport function BusinessPartnerGroupQueryFromJSON(\n json: any,\n): BusinessPartnerGroupQuery {\n return BusinessPartnerGroupQueryFromJSONTyped(json, false);\n}\n\nexport function BusinessPartnerGroupQueryFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): BusinessPartnerGroupQuery {\n if (json == null) {\n return json;\n }\n return {\n searchQuery:\n json['searchQuery'] == null ? undefined : json['searchQuery'],\n limit: json['limit'] == null ? undefined : json['limit'],\n };\n}\n\nexport function BusinessPartnerGroupQueryToJSON(\n json: any,\n): BusinessPartnerGroupQuery {\n return BusinessPartnerGroupQueryToJSONTyped(json, false);\n}\n\nexport function BusinessPartnerGroupQueryToJSONTyped(\n value?: BusinessPartnerGroupQuery | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n searchQuery: value['searchQuery'],\n limit: value['limit'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n/* eslint-disable */\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n/**\n * Currently Supported Event Types\n * @export\n */\nexport const CallbackAddressEventType = {\n ContractNegotiationFinalized: 'CONTRACT_NEGOTIATION_FINALIZED',\n ContractNegotiationTerminated: 'CONTRACT_NEGOTIATION_TERMINATED',\n TransferProcessStarted: 'TRANSFER_PROCESS_STARTED',\n TransferProcessTerminated: 'TRANSFER_PROCESS_TERMINATED',\n TransferProcessCompleted: 'TRANSFER_PROCESS_COMPLETED',\n} as const;\nexport type CallbackAddressEventType =\n (typeof CallbackAddressEventType)[keyof typeof CallbackAddressEventType];\n\nexport function instanceOfCallbackAddressEventType(value: any): boolean {\n for (const key in CallbackAddressEventType) {\n if (\n Object.prototype.hasOwnProperty.call(CallbackAddressEventType, key)\n ) {\n if (\n CallbackAddressEventType[\n key as keyof typeof CallbackAddressEventType\n ] === value\n ) {\n return true;\n }\n }\n }\n return false;\n}\n\nexport function CallbackAddressEventTypeFromJSON(\n json: any,\n): CallbackAddressEventType {\n return CallbackAddressEventTypeFromJSONTyped(json, false);\n}\n\nexport function CallbackAddressEventTypeFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): CallbackAddressEventType {\n return json as CallbackAddressEventType;\n}\n\nexport function CallbackAddressEventTypeToJSON(\n value?: CallbackAddressEventType | null,\n): any {\n return value as any;\n}\n\nexport function CallbackAddressEventTypeToJSONTyped(\n value: any,\n ignoreDiscriminator: boolean,\n): CallbackAddressEventType {\n return value as CallbackAddressEventType;\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {CallbackAddressEventType} from './CallbackAddressEventType';\nimport {\n CallbackAddressEventTypeFromJSON,\n CallbackAddressEventTypeFromJSONTyped,\n CallbackAddressEventTypeToJSON,\n CallbackAddressEventTypeToJSONTyped,\n} from './CallbackAddressEventType';\n\n/**\n * Callback address to be called after a transfer or negotiation success/failure\n * @export\n * @interface CallbackAddressDto\n */\nexport interface CallbackAddressDto {\n /**\n * URL to be called when the event is fired\n * @type {string}\n * @memberof CallbackAddressDto\n */\n url: string;\n /**\n * Event Types to subscribe to.\n * @type {Array<CallbackAddressEventType>}\n * @memberof CallbackAddressDto\n */\n events: Array<CallbackAddressEventType>;\n /**\n * Authentication: Header Name\n * @type {string}\n * @memberof CallbackAddressDto\n */\n authHeaderName?: string;\n /**\n * Authentication: Header Value (Vault Secret Name)\n * @type {string}\n * @memberof CallbackAddressDto\n */\n authHeaderVaultSecretName?: string;\n}\n\n/**\n * Check if a given object implements the CallbackAddressDto interface.\n */\nexport function instanceOfCallbackAddressDto(\n value: any,\n): value is CallbackAddressDto {\n if (!('url' in value) || value['url'] === undefined) return false;\n if (!('events' in value) || value['events'] === undefined) return false;\n return true;\n}\n\nexport function CallbackAddressDtoFromJSON(json: any): CallbackAddressDto {\n return CallbackAddressDtoFromJSONTyped(json, false);\n}\n\nexport function CallbackAddressDtoFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): CallbackAddressDto {\n if (json == null) {\n return json;\n }\n return {\n url: json['url'],\n events: (json['events'] as Array<any>).map(\n CallbackAddressEventTypeFromJSON,\n ),\n authHeaderName:\n json['authHeaderName'] == null ? undefined : json['authHeaderName'],\n authHeaderVaultSecretName:\n json['authHeaderVaultSecretName'] == null\n ? undefined\n : json['authHeaderVaultSecretName'],\n };\n}\n\nexport function CallbackAddressDtoToJSON(json: any): CallbackAddressDto {\n return CallbackAddressDtoToJSONTyped(json, false);\n}\n\nexport function CallbackAddressDtoToJSONTyped(\n value?: CallbackAddressDto | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n url: value['url'],\n events: (value['events'] as Array<any>).map(\n CallbackAddressEventTypeToJSON,\n ),\n authHeaderName: value['authHeaderName'],\n authHeaderVaultSecretName: value['authHeaderVaultSecretName'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n/* eslint-disable */\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n/**\n * Value type of a filter expression criterion\n * @export\n */\nexport const CatalogFilterExpressionLiteralType = {\n Value: 'VALUE',\n ValueList: 'VALUE_LIST',\n} as const;\nexport type CatalogFilterExpressionLiteralType =\n (typeof CatalogFilterExpressionLiteralType)[keyof typeof CatalogFilterExpressionLiteralType];\n\nexport function instanceOfCatalogFilterExpressionLiteralType(\n value: any,\n): boolean {\n for (const key in CatalogFilterExpressionLiteralType) {\n if (\n Object.prototype.hasOwnProperty.call(\n CatalogFilterExpressionLiteralType,\n key,\n )\n ) {\n if (\n CatalogFilterExpressionLiteralType[\n key as keyof typeof CatalogFilterExpressionLiteralType\n ] === value\n ) {\n return true;\n }\n }\n }\n return false;\n}\n\nexport function CatalogFilterExpressionLiteralTypeFromJSON(\n json: any,\n): CatalogFilterExpressionLiteralType {\n return CatalogFilterExpressionLiteralTypeFromJSONTyped(json, false);\n}\n\nexport function CatalogFilterExpressionLiteralTypeFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): CatalogFilterExpressionLiteralType {\n return json as CatalogFilterExpressionLiteralType;\n}\n\nexport function CatalogFilterExpressionLiteralTypeToJSON(\n value?: CatalogFilterExpressionLiteralType | null,\n): any {\n return value as any;\n}\n\nexport function CatalogFilterExpressionLiteralTypeToJSONTyped(\n value: any,\n ignoreDiscriminator: boolean,\n): CatalogFilterExpressionLiteralType {\n return value as CatalogFilterExpressionLiteralType;\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {CatalogFilterExpressionLiteralType} from './CatalogFilterExpressionLiteralType';\nimport {\n CatalogFilterExpressionLiteralTypeFromJSON,\n CatalogFilterExpressionLiteralTypeFromJSONTyped,\n CatalogFilterExpressionLiteralTypeToJSON,\n CatalogFilterExpressionLiteralTypeToJSONTyped,\n} from './CatalogFilterExpressionLiteralType';\n\n/**\n * FilterExpression Criterion Literal\n * @export\n * @interface CatalogFilterExpressionLiteral\n */\nexport interface CatalogFilterExpressionLiteral {\n /**\n *\n * @type {CatalogFilterExpressionLiteralType}\n * @memberof CatalogFilterExpressionLiteral\n * @deprecated\n */\n type?: CatalogFilterExpressionLiteralType;\n /**\n * Only for type VALUE. The single value representation.\n * @type {string}\n * @memberof CatalogFilterExpressionLiteral\n */\n value?: string;\n /**\n * Only for type VALUE_LIST. List of values, e.g. for the IN-Operator.\n * @type {Array<string>}\n * @memberof CatalogFilterExpressionLiteral\n */\n valueList?: Array<string>;\n}\n\n/**\n * Check if a given object implements the CatalogFilterExpressionLiteral interface.\n */\nexport function instanceOfCatalogFilterExpressionLiteral(\n value: any,\n): value is CatalogFilterExpressionLiteral {\n return true;\n}\n\nexport function CatalogFilterExpressionLiteralFromJSON(\n json: any,\n): CatalogFilterExpressionLiteral {\n return CatalogFilterExpressionLiteralFromJSONTyped(json, false);\n}\n\nexport function CatalogFilterExpressionLiteralFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): CatalogFilterExpressionLiteral {\n if (json == null) {\n return json;\n }\n return {\n type:\n json['type'] == null\n ? undefined\n : CatalogFilterExpressionLiteralTypeFromJSON(json['type']),\n value: json['value'] == null ? undefined : json['value'],\n valueList: json['valueList'] == null ? undefined : json['valueList'],\n };\n}\n\nexport function CatalogFilterExpressionLiteralToJSON(\n json: any,\n): CatalogFilterExpressionLiteral {\n return CatalogFilterExpressionLiteralToJSONTyped(json, false);\n}\n\nexport function CatalogFilterExpressionLiteralToJSONTyped(\n value?: CatalogFilterExpressionLiteral | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n type: CatalogFilterExpressionLiteralTypeToJSON(value['type']),\n value: value['value'],\n valueList: value['valueList'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n/* eslint-disable */\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n/**\n * Operator for filter expressions\n * @export\n */\nexport const CatalogFilterExpressionOperator = {\n Like: 'LIKE',\n Eq: 'EQ',\n In: 'IN',\n} as const;\nexport type CatalogFilterExpressionOperator =\n (typeof CatalogFilterExpressionOperator)[keyof typeof CatalogFilterExpressionOperator];\n\nexport function instanceOfCatalogFilterExpressionOperator(value: any): boolean {\n for (const key in CatalogFilterExpressionOperator) {\n if (\n Object.prototype.hasOwnProperty.call(\n CatalogFilterExpressionOperator,\n key,\n )\n ) {\n if (\n CatalogFilterExpressionOperator[\n key as keyof typeof CatalogFilterExpressionOperator\n ] === value\n ) {\n return true;\n }\n }\n }\n return false;\n}\n\nexport function CatalogFilterExpressionOperatorFromJSON(\n json: any,\n): CatalogFilterExpressionOperator {\n return CatalogFilterExpressionOperatorFromJSONTyped(json, false);\n}\n\nexport function CatalogFilterExpressionOperatorFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): CatalogFilterExpressionOperator {\n return json as CatalogFilterExpressionOperator;\n}\n\nexport function CatalogFilterExpressionOperatorToJSON(\n value?: CatalogFilterExpressionOperator | null,\n): any {\n return value as any;\n}\n\nexport function CatalogFilterExpressionOperatorToJSONTyped(\n value: any,\n ignoreDiscriminator: boolean,\n): CatalogFilterExpressionOperator {\n return value as CatalogFilterExpressionOperator;\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {CatalogFilterExpressionLiteral} from './CatalogFilterExpressionLiteral';\nimport {\n CatalogFilterExpressionLiteralFromJSON,\n CatalogFilterExpressionLiteralFromJSONTyped,\n CatalogFilterExpressionLiteralToJSON,\n CatalogFilterExpressionLiteralToJSONTyped,\n} from './CatalogFilterExpressionLiteral';\nimport type {CatalogFilterExpressionOperator} from './CatalogFilterExpressionOperator';\nimport {\n CatalogFilterExpressionOperatorFromJSON,\n CatalogFilterExpressionOperatorFromJSONTyped,\n CatalogFilterExpressionOperatorToJSON,\n CatalogFilterExpressionOperatorToJSONTyped,\n} from './CatalogFilterExpressionOperator';\n\n/**\n * Generic expression for filtering the data offers in the catalog\n * @export\n * @interface CatalogFilterExpression\n */\nexport interface CatalogFilterExpression {\n /**\n * Asset property name\n * @type {string}\n * @memberof CatalogFilterExpression\n */\n operandLeft: string;\n /**\n * Operator\n * @type {CatalogFilterExpressionOperator}\n * @memberof CatalogFilterExpression\n * @deprecated\n */\n operator: CatalogFilterExpressionOperator;\n /**\n * Right Operand\n * @type {CatalogFilterExpressionLiteral}\n * @memberof CatalogFilterExpression\n * @deprecated\n */\n operandRight: CatalogFilterExpressionLiteral;\n}\n\n/**\n * Check if a given object implements the CatalogFilterExpression interface.\n */\nexport function instanceOfCatalogFilterExpression(\n value: any,\n): value is CatalogFilterExpression {\n if (!('operandLeft' in value) || value['operandLeft'] === undefined)\n return false;\n if (!('operator' in value) || value['operator'] === undefined) return false;\n if (!('operandRight' in value) || value['operandRight'] === undefined)\n return false;\n return true;\n}\n\nexport function CatalogFilterExpressionFromJSON(\n json: any,\n): CatalogFilterExpression {\n return CatalogFilterExpressionFromJSONTyped(json, false);\n}\n\nexport function CatalogFilterExpressionFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): CatalogFilterExpression {\n if (json == null) {\n return json;\n }\n return {\n operandLeft: json['operandLeft'],\n operator: CatalogFilterExpressionOperatorFromJSON(json['operator']),\n operandRight: CatalogFilterExpressionLiteralFromJSON(\n json['operandRight'],\n ),\n };\n}\n\nexport function CatalogFilterExpressionToJSON(\n json: any,\n): CatalogFilterExpression {\n return CatalogFilterExpressionToJSONTyped(json, false);\n}\n\nexport function CatalogFilterExpressionToJSONTyped(\n value?: CatalogFilterExpression | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n operandLeft: value['operandLeft'],\n operator: CatalogFilterExpressionOperatorToJSON(value['operator']),\n operandRight: CatalogFilterExpressionLiteralToJSON(\n value['operandRight'],\n ),\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {CatalogFilterExpression} from './CatalogFilterExpression';\nimport {\n CatalogFilterExpressionFromJSON,\n CatalogFilterExpressionFromJSONTyped,\n CatalogFilterExpressionToJSON,\n CatalogFilterExpressionToJSONTyped,\n} from './CatalogFilterExpression';\n\n/**\n * Catalog query parameters\n * @export\n * @interface CatalogQuery\n */\nexport interface CatalogQuery {\n /**\n * Target EDC DSP endpoint URL. Can contain a queryParam 'participantId', which is provided by default in the Connector Endpoint in the EDC UI.\n * @type {string}\n * @memberof CatalogQuery\n */\n connectorEndpoint: string;\n /**\n * Target EDC Participant ID. It is required if the connector endpoint does not contain the queryParam 'participantId'.\n * @type {string}\n * @memberof CatalogQuery\n */\n participantId?: string;\n /**\n * Limit the number of results\n * @type {number}\n * @memberof CatalogQuery\n */\n limit?: number;\n /**\n * Offset for returned results, e.g. start at result 2\n * @type {number}\n * @memberof CatalogQuery\n */\n offset?: number;\n /**\n * Filter expressions for catalog filtering\n * @type {Array<CatalogFilterExpression>}\n * @memberof CatalogQuery\n */\n filterExpressions?: Array<CatalogFilterExpression>;\n}\n\n/**\n * Check if a given object implements the CatalogQuery interface.\n */\nexport function instanceOfCatalogQuery(value: any): value is CatalogQuery {\n if (\n !('connectorEndpoint' in value) ||\n value['connectorEndpoint'] === undefined\n )\n return false;\n return true;\n}\n\nexport function CatalogQueryFromJSON(json: any): CatalogQuery {\n return CatalogQueryFromJSONTyped(json, false);\n}\n\nexport function CatalogQueryFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): CatalogQuery {\n if (json == null) {\n return json;\n }\n return {\n connectorEndpoint: json['connectorEndpoint'],\n participantId:\n json['participantId'] == null ? undefined : json['participantId'],\n limit: json['limit'] == null ? undefined : json['limit'],\n offset: json['offset'] == null ? undefined : json['offset'],\n filterExpressions:\n json['filterExpressions'] == null\n ? undefined\n : (json['filterExpressions'] as Array<any>).map(\n CatalogFilterExpressionFromJSON,\n ),\n };\n}\n\nexport function CatalogQueryToJSON(json: any): CatalogQuery {\n return CatalogQueryToJSONTyped(json, false);\n}\n\nexport function CatalogQueryToJSONTyped(\n value?: CatalogQuery | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n connectorEndpoint: value['connectorEndpoint'],\n participantId: value['participantId'],\n limit: value['limit'],\n offset: value['offset'],\n filterExpressions:\n value['filterExpressions'] == null\n ? undefined\n : (value['filterExpressions'] as Array<any>).map(\n CatalogFilterExpressionToJSON,\n ),\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n/* eslint-disable */\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n/**\n * Sort Direction\n * @export\n */\nexport const CatalogSortByDirection = {\n Asc: 'ASC',\n Desc: 'DESC',\n} as const;\nexport type CatalogSortByDirection =\n (typeof CatalogSortByDirection)[keyof typeof CatalogSortByDirection];\n\nexport function instanceOfCatalogSortByDirection(value: any): boolean {\n for (const key in CatalogSortByDirection) {\n if (Object.prototype.hasOwnProperty.call(CatalogSortByDirection, key)) {\n if (\n CatalogSortByDirection[\n key as keyof typeof CatalogSortByDirection\n ] === value\n ) {\n return true;\n }\n }\n }\n return false;\n}\n\nexport function CatalogSortByDirectionFromJSON(\n json: any,\n): CatalogSortByDirection {\n return CatalogSortByDirectionFromJSONTyped(json, false);\n}\n\nexport function CatalogSortByDirectionFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): CatalogSortByDirection {\n return json as CatalogSortByDirection;\n}\n\nexport function CatalogSortByDirectionToJSON(\n value?: CatalogSortByDirection | null,\n): any {\n return value as any;\n}\n\nexport function CatalogSortByDirectionToJSONTyped(\n value: any,\n ignoreDiscriminator: boolean,\n): CatalogSortByDirection {\n return value as CatalogSortByDirection;\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {CatalogSortByDirection} from './CatalogSortByDirection';\nimport {\n CatalogSortByDirectionFromJSON,\n CatalogSortByDirectionFromJSONTyped,\n CatalogSortByDirectionToJSON,\n CatalogSortByDirectionToJSONTyped,\n} from './CatalogSortByDirection';\n\n/**\n * One field to sort by\n * @export\n * @interface CatalogSortBy\n */\nexport interface CatalogSortBy {\n /**\n * Asset property path\n * @type {Array<string>}\n * @memberof CatalogSortBy\n */\n assetPropertyPath: Array<string>;\n /**\n * Direction to sort by\n * @type {CatalogSortByDirection}\n * @memberof CatalogSortBy\n */\n direction?: CatalogSortByDirection;\n}\n\n/**\n * Check if a given object implements the CatalogSortBy interface.\n */\nexport function instanceOfCatalogSortBy(value: any): value is CatalogSortBy {\n if (\n !('assetPropertyPath' in value) ||\n value['assetPropertyPath'] === undefined\n )\n return false;\n return true;\n}\n\nexport function CatalogSortByFromJSON(json: any): CatalogSortBy {\n return CatalogSortByFromJSONTyped(json, false);\n}\n\nexport function CatalogSortByFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): CatalogSortBy {\n if (json == null) {\n return json;\n }\n return {\n assetPropertyPath: json['assetPropertyPath'],\n direction:\n json['direction'] == null\n ? undefined\n : CatalogSortByDirectionFromJSON(json['direction']),\n };\n}\n\nexport function CatalogSortByToJSON(json: any): CatalogSortBy {\n return CatalogSortByToJSONTyped(json, false);\n}\n\nexport function CatalogSortByToJSONTyped(\n value?: CatalogSortBy | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n assetPropertyPath: value['assetPropertyPath'],\n direction: CatalogSortByDirectionToJSON(value['direction']),\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {AssetFilterConstraint} from './AssetFilterConstraint';\nimport {\n AssetFilterConstraintFromJSON,\n AssetFilterConstraintFromJSONTyped,\n AssetFilterConstraintToJSON,\n AssetFilterConstraintToJSONTyped,\n} from './AssetFilterConstraint';\nimport type {CatalogSortBy} from './CatalogSortBy';\nimport {\n CatalogSortByFromJSON,\n CatalogSortByFromJSONTyped,\n CatalogSortByToJSON,\n CatalogSortByToJSONTyped,\n} from './CatalogSortBy';\n\n/**\n * Catalog query parameters\n * @export\n * @interface CatalogQueryV2\n */\nexport interface CatalogQueryV2 {\n /**\n * Target EDC DSP endpoint URL\n * @type {string}\n * @memberof CatalogQueryV2\n */\n connectorEndpoint: string;\n /**\n * Target EDC Participant ID\n * @type {string}\n * @memberof CatalogQueryV2\n */\n participantId: string;\n /**\n * Conjunction of filter expressions for data offer filtering\n * @type {Array<AssetFilterConstraint>}\n * @memberof CatalogQueryV2\n */\n filter?: Array<AssetFilterConstraint>;\n /**\n * Limit the number of results\n * @type {number}\n * @memberof CatalogQueryV2\n */\n limit?: number;\n /**\n * Offset for returned results, e.g. start at result 2\n * @type {number}\n * @memberof CatalogQueryV2\n */\n offset?: number;\n /**\n * Field to sort by\n * @type {CatalogSortBy}\n * @memberof CatalogQueryV2\n * @deprecated\n */\n sortBy?: CatalogSortBy;\n}\n\n/**\n * Check if a given object implements the CatalogQueryV2 interface.\n */\nexport function instanceOfCatalogQueryV2(value: any): value is CatalogQueryV2 {\n if (\n !('connectorEndpoint' in value) ||\n value['connectorEndpoint'] === undefined\n )\n return false;\n if (!('participantId' in value) || value['participantId'] === undefined)\n return false;\n return true;\n}\n\nexport function CatalogQueryV2FromJSON(json: any): CatalogQueryV2 {\n return CatalogQueryV2FromJSONTyped(json, false);\n}\n\nexport function CatalogQueryV2FromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): CatalogQueryV2 {\n if (json == null) {\n return json;\n }\n return {\n connectorEndpoint: json['connectorEndpoint'],\n participantId: json['participantId'],\n filter:\n json['filter'] == null\n ? undefined\n : (json['filter'] as Array<any>).map(\n AssetFilterConstraintFromJSON,\n ),\n limit: json['limit'] == null ? undefined : json['limit'],\n offset: json['offset'] == null ? undefined : json['offset'],\n sortBy:\n json['sortBy'] == null\n ? undefined\n : CatalogSortByFromJSON(json['sortBy']),\n };\n}\n\nexport function CatalogQueryV2ToJSON(json: any): CatalogQueryV2 {\n return CatalogQueryV2ToJSONTyped(json, false);\n}\n\nexport function CatalogQueryV2ToJSONTyped(\n value?: CatalogQueryV2 | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n connectorEndpoint: value['connectorEndpoint'],\n participantId: value['participantId'],\n filter:\n value['filter'] == null\n ? undefined\n : (value['filter'] as Array<any>).map(\n AssetFilterConstraintToJSON,\n ),\n limit: value['limit'],\n offset: value['offset'],\n sortBy: CatalogSortByToJSON(value['sortBy']),\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\n\n/**\n * Available and used resources of a connector.\n * @export\n * @interface ConnectorLimits\n */\nexport interface ConnectorLimits {\n /**\n * Current amount of active consuming contract agreements.\n * @type {number}\n * @memberof ConnectorLimits\n */\n numActiveConsumingContractAgreements: number;\n /**\n * Maximum amount of active consuming contract agreements. A value of 'null' or a negative value means that there are no limit.\n * @type {number}\n * @memberof ConnectorLimits\n */\n maxActiveConsumingContractAgreements?: number;\n}\n\n/**\n * Check if a given object implements the ConnectorLimits interface.\n */\nexport function instanceOfConnectorLimits(\n value: any,\n): value is ConnectorLimits {\n if (\n !('numActiveConsumingContractAgreements' in value) ||\n value['numActiveConsumingContractAgreements'] === undefined\n )\n return false;\n return true;\n}\n\nexport function ConnectorLimitsFromJSON(json: any): ConnectorLimits {\n return ConnectorLimitsFromJSONTyped(json, false);\n}\n\nexport function ConnectorLimitsFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): ConnectorLimits {\n if (json == null) {\n return json;\n }\n return {\n numActiveConsumingContractAgreements:\n json['numActiveConsumingContractAgreements'],\n maxActiveConsumingContractAgreements:\n json['maxActiveConsumingContractAgreements'] == null\n ? undefined\n : json['maxActiveConsumingContractAgreements'],\n };\n}\n\nexport function ConnectorLimitsToJSON(json: any): ConnectorLimits {\n return ConnectorLimitsToJSONTyped(json, false);\n}\n\nexport function ConnectorLimitsToJSONTyped(\n value?: ConnectorLimits | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n numActiveConsumingContractAgreements:\n value['numActiveConsumingContractAgreements'],\n maxActiveConsumingContractAgreements:\n value['maxActiveConsumingContractAgreements'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n/* eslint-disable */\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n/**\n * Whether the contract agreement is incoming or outgoing\n * @export\n */\nexport const ContractAgreementDirection = {\n Consuming: 'CONSUMING',\n Providing: 'PROVIDING',\n} as const;\nexport type ContractAgreementDirection =\n (typeof ContractAgreementDirection)[keyof typeof ContractAgreementDirection];\n\nexport function instanceOfContractAgreementDirection(value: any): boolean {\n for (const key in ContractAgreementDirection) {\n if (\n Object.prototype.hasOwnProperty.call(\n ContractAgreementDirection,\n key,\n )\n ) {\n if (\n ContractAgreementDirection[\n key as keyof typeof ContractAgreementDirection\n ] === value\n ) {\n return true;\n }\n }\n }\n return false;\n}\n\nexport function ContractAgreementDirectionFromJSON(\n json: any,\n): ContractAgreementDirection {\n return ContractAgreementDirectionFromJSONTyped(json, false);\n}\n\nexport function ContractAgreementDirectionFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): ContractAgreementDirection {\n return json as ContractAgreementDirection;\n}\n\nexport function ContractAgreementDirectionToJSON(\n value?: ContractAgreementDirection | null,\n): any {\n return value as any;\n}\n\nexport function ContractAgreementDirectionToJSONTyped(\n value: any,\n ignoreDiscriminator: boolean,\n): ContractAgreementDirection {\n return value as ContractAgreementDirection;\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n/* eslint-disable */\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n/**\n * Whether the contract termination was initiated by this EDC or a counterparty EDC.\n * @export\n */\nexport const ContractTerminatedBy = {\n Self: 'SELF',\n Counterparty: 'COUNTERPARTY',\n} as const;\nexport type ContractTerminatedBy =\n (typeof ContractTerminatedBy)[keyof typeof ContractTerminatedBy];\n\nexport function instanceOfContractTerminatedBy(value: any): boolean {\n for (const key in ContractTerminatedBy) {\n if (Object.prototype.hasOwnProperty.call(ContractTerminatedBy, key)) {\n if (\n ContractTerminatedBy[\n key as keyof typeof ContractTerminatedBy\n ] === value\n ) {\n return true;\n }\n }\n }\n return false;\n}\n\nexport function ContractTerminatedByFromJSON(json: any): ContractTerminatedBy {\n return ContractTerminatedByFromJSONTyped(json, false);\n}\n\nexport function ContractTerminatedByFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): ContractTerminatedBy {\n return json as ContractTerminatedBy;\n}\n\nexport function ContractTerminatedByToJSON(\n value?: ContractTerminatedBy | null,\n): any {\n return value as any;\n}\n\nexport function ContractTerminatedByToJSONTyped(\n value: any,\n ignoreDiscriminator: boolean,\n): ContractTerminatedBy {\n return value as ContractTerminatedBy;\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {ContractTerminatedBy} from './ContractTerminatedBy';\nimport {\n ContractTerminatedByFromJSON,\n ContractTerminatedByFromJSONTyped,\n ContractTerminatedByToJSON,\n ContractTerminatedByToJSONTyped,\n} from './ContractTerminatedBy';\n\n/**\n * Contract's agreement metadata\n * @export\n * @interface ContractAgreementTerminationInfo\n */\nexport interface ContractAgreementTerminationInfo {\n /**\n * Termination's date and time\n * @type {Date}\n * @memberof ContractAgreementTerminationInfo\n */\n terminatedAt: Date;\n /**\n * The termination's nature e.g. User Termination\n * @type {string}\n * @memberof ContractAgreementTerminationInfo\n */\n reason: string;\n /**\n * Detailed message from the terminating party about why the contract was terminated.\n * @type {string}\n * @memberof ContractAgreementTerminationInfo\n */\n detail: string;\n /**\n * Indicates whether the termination comes from this EDC or the counterparty EDC.\n * @type {ContractTerminatedBy}\n * @memberof ContractAgreementTerminationInfo\n */\n terminatedBy: ContractTerminatedBy;\n}\n\n/**\n * Check if a given object implements the ContractAgreementTerminationInfo interface.\n */\nexport function instanceOfContractAgreementTerminationInfo(\n value: any,\n): value is ContractAgreementTerminationInfo {\n if (!('terminatedAt' in value) || value['terminatedAt'] === undefined)\n return false;\n if (!('reason' in value) || value['reason'] === undefined) return false;\n if (!('detail' in value) || value['detail'] === undefined) return false;\n if (!('terminatedBy' in value) || value['terminatedBy'] === undefined)\n return false;\n return true;\n}\n\nexport function ContractAgreementTerminationInfoFromJSON(\n json: any,\n): ContractAgreementTerminationInfo {\n return ContractAgreementTerminationInfoFromJSONTyped(json, false);\n}\n\nexport function ContractAgreementTerminationInfoFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): ContractAgreementTerminationInfo {\n if (json == null) {\n return json;\n }\n return {\n terminatedAt: new Date(json['terminatedAt']),\n reason: json['reason'],\n detail: json['detail'],\n terminatedBy: ContractTerminatedByFromJSON(json['terminatedBy']),\n };\n}\n\nexport function ContractAgreementTerminationInfoToJSON(\n json: any,\n): ContractAgreementTerminationInfo {\n return ContractAgreementTerminationInfoToJSONTyped(json, false);\n}\n\nexport function ContractAgreementTerminationInfoToJSONTyped(\n value?: ContractAgreementTerminationInfo | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n terminatedAt: value['terminatedAt'].toISOString(),\n reason: value['reason'],\n detail: value['detail'],\n terminatedBy: ContractTerminatedByToJSON(value['terminatedBy']),\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n/* eslint-disable */\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n/**\n * Simplified Transfer Process State to be used in UI\n * @export\n */\nexport const TransferProcessSimplifiedState = {\n Running: 'RUNNING',\n Ok: 'OK',\n Error: 'ERROR',\n} as const;\nexport type TransferProcessSimplifiedState =\n (typeof TransferProcessSimplifiedState)[keyof typeof TransferProcessSimplifiedState];\n\nexport function instanceOfTransferProcessSimplifiedState(value: any): boolean {\n for (const key in TransferProcessSimplifiedState) {\n if (\n Object.prototype.hasOwnProperty.call(\n TransferProcessSimplifiedState,\n key,\n )\n ) {\n if (\n TransferProcessSimplifiedState[\n key as keyof typeof TransferProcessSimplifiedState\n ] === value\n ) {\n return true;\n }\n }\n }\n return false;\n}\n\nexport function TransferProcessSimplifiedStateFromJSON(\n json: any,\n): TransferProcessSimplifiedState {\n return TransferProcessSimplifiedStateFromJSONTyped(json, false);\n}\n\nexport function TransferProcessSimplifiedStateFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): TransferProcessSimplifiedState {\n return json as TransferProcessSimplifiedState;\n}\n\nexport function TransferProcessSimplifiedStateToJSON(\n value?: TransferProcessSimplifiedState | null,\n): any {\n return value as any;\n}\n\nexport function TransferProcessSimplifiedStateToJSONTyped(\n value: any,\n ignoreDiscriminator: boolean,\n): TransferProcessSimplifiedState {\n return value as TransferProcessSimplifiedState;\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {TransferProcessSimplifiedState} from './TransferProcessSimplifiedState';\nimport {\n TransferProcessSimplifiedStateFromJSON,\n TransferProcessSimplifiedStateFromJSONTyped,\n TransferProcessSimplifiedStateToJSON,\n TransferProcessSimplifiedStateToJSONTyped,\n} from './TransferProcessSimplifiedState';\n\n/**\n * Transfer Process State interpreted\n * @export\n * @interface TransferProcessState\n */\nexport interface TransferProcessState {\n /**\n * State name or 'CUSTOM'. State names only exist for original EDC Transfer Process States.\n * @type {string}\n * @memberof TransferProcessState\n */\n name: string;\n /**\n * State code\n * @type {number}\n * @memberof TransferProcessState\n */\n code: number;\n /**\n * Whether we are running, in an error state or done.\n * @type {TransferProcessSimplifiedState}\n * @memberof TransferProcessState\n */\n simplifiedState: TransferProcessSimplifiedState;\n}\n\n/**\n * Check if a given object implements the TransferProcessState interface.\n */\nexport function instanceOfTransferProcessState(\n value: any,\n): value is TransferProcessState {\n if (!('name' in value) || value['name'] === undefined) return false;\n if (!('code' in value) || value['code'] === undefined) return false;\n if (!('simplifiedState' in value) || value['simplifiedState'] === undefined)\n return false;\n return true;\n}\n\nexport function TransferProcessStateFromJSON(json: any): TransferProcessState {\n return TransferProcessStateFromJSONTyped(json, false);\n}\n\nexport function TransferProcessStateFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): TransferProcessState {\n if (json == null) {\n return json;\n }\n return {\n name: json['name'],\n code: json['code'],\n simplifiedState: TransferProcessSimplifiedStateFromJSON(\n json['simplifiedState'],\n ),\n };\n}\n\nexport function TransferProcessStateToJSON(json: any): TransferProcessState {\n return TransferProcessStateToJSONTyped(json, false);\n}\n\nexport function TransferProcessStateToJSONTyped(\n value?: TransferProcessState | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n name: value['name'],\n code: value['code'],\n simplifiedState: TransferProcessSimplifiedStateToJSON(\n value['simplifiedState'],\n ),\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {TransferProcessState} from './TransferProcessState';\nimport {\n TransferProcessStateFromJSON,\n TransferProcessStateFromJSONTyped,\n TransferProcessStateToJSON,\n TransferProcessStateToJSONTyped,\n} from './TransferProcessState';\n\n/**\n * A Contract Agreement's Transfer Process\n * @export\n * @interface ContractAgreementTransferProcess\n */\nexport interface ContractAgreementTransferProcess {\n /**\n * Transfer Process ID\n * @type {string}\n * @memberof ContractAgreementTransferProcess\n */\n transferProcessId: string;\n /**\n * Last Change Date\n * @type {Date}\n * @memberof ContractAgreementTransferProcess\n */\n lastUpdatedDate: Date;\n /**\n * Current State\n * @type {TransferProcessState}\n * @memberof ContractAgreementTransferProcess\n */\n state: TransferProcessState;\n /**\n * Error Message\n * @type {string}\n * @memberof ContractAgreementTransferProcess\n */\n errorMessage?: string;\n}\n\n/**\n * Check if a given object implements the ContractAgreementTransferProcess interface.\n */\nexport function instanceOfContractAgreementTransferProcess(\n value: any,\n): value is ContractAgreementTransferProcess {\n if (\n !('transferProcessId' in value) ||\n value['transferProcessId'] === undefined\n )\n return false;\n if (!('lastUpdatedDate' in value) || value['lastUpdatedDate'] === undefined)\n return false;\n if (!('state' in value) || value['state'] === undefined) return false;\n return true;\n}\n\nexport function ContractAgreementTransferProcessFromJSON(\n json: any,\n): ContractAgreementTransferProcess {\n return ContractAgreementTransferProcessFromJSONTyped(json, false);\n}\n\nexport function ContractAgreementTransferProcessFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): ContractAgreementTransferProcess {\n if (json == null) {\n return json;\n }\n return {\n transferProcessId: json['transferProcessId'],\n lastUpdatedDate: new Date(json['lastUpdatedDate']),\n state: TransferProcessStateFromJSON(json['state']),\n errorMessage:\n json['errorMessage'] == null ? undefined : json['errorMessage'],\n };\n}\n\nexport function ContractAgreementTransferProcessToJSON(\n json: any,\n): ContractAgreementTransferProcess {\n return ContractAgreementTransferProcessToJSONTyped(json, false);\n}\n\nexport function ContractAgreementTransferProcessToJSONTyped(\n value?: ContractAgreementTransferProcess | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n transferProcessId: value['transferProcessId'],\n lastUpdatedDate: value['lastUpdatedDate'].toISOString(),\n state: TransferProcessStateToJSON(value['state']),\n errorMessage: value['errorMessage'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n/* eslint-disable */\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n/**\n * The contract termination status\n * @export\n */\nexport const ContractTerminationStatus = {\n Ongoing: 'ONGOING',\n Terminated: 'TERMINATED',\n} as const;\nexport type ContractTerminationStatus =\n (typeof ContractTerminationStatus)[keyof typeof ContractTerminationStatus];\n\nexport function instanceOfContractTerminationStatus(value: any): boolean {\n for (const key in ContractTerminationStatus) {\n if (\n Object.prototype.hasOwnProperty.call(ContractTerminationStatus, key)\n ) {\n if (\n ContractTerminationStatus[\n key as keyof typeof ContractTerminationStatus\n ] === value\n ) {\n return true;\n }\n }\n }\n return false;\n}\n\nexport function ContractTerminationStatusFromJSON(\n json: any,\n): ContractTerminationStatus {\n return ContractTerminationStatusFromJSONTyped(json, false);\n}\n\nexport function ContractTerminationStatusFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): ContractTerminationStatus {\n return json as ContractTerminationStatus;\n}\n\nexport function ContractTerminationStatusToJSON(\n value?: ContractTerminationStatus | null,\n): any {\n return value as any;\n}\n\nexport function ContractTerminationStatusToJSONTyped(\n value: any,\n ignoreDiscriminator: boolean,\n): ContractTerminationStatus {\n return value as ContractTerminationStatus;\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n/* eslint-disable */\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n/**\n * Type-Safe ODRL Policy Operator as supported by the sovity product landscape\n * @export\n */\nexport const OperatorDto = {\n Eq: 'EQ',\n Neq: 'NEQ',\n Gt: 'GT',\n Geq: 'GEQ',\n Lt: 'LT',\n Leq: 'LEQ',\n In: 'IN',\n HasPart: 'HAS_PART',\n IsA: 'IS_A',\n IsAllOf: 'IS_ALL_OF',\n IsAnyOf: 'IS_ANY_OF',\n IsNoneOf: 'IS_NONE_OF',\n} as const;\nexport type OperatorDto = (typeof OperatorDto)[keyof typeof OperatorDto];\n\nexport function instanceOfOperatorDto(value: any): boolean {\n for (const key in OperatorDto) {\n if (Object.prototype.hasOwnProperty.call(OperatorDto, key)) {\n if (OperatorDto[key as keyof typeof OperatorDto] === value) {\n return true;\n }\n }\n }\n return false;\n}\n\nexport function OperatorDtoFromJSON(json: any): OperatorDto {\n return OperatorDtoFromJSONTyped(json, false);\n}\n\nexport function OperatorDtoFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): OperatorDto {\n return json as OperatorDto;\n}\n\nexport function OperatorDtoToJSON(value?: OperatorDto | null): any {\n return value as any;\n}\n\nexport function OperatorDtoToJSONTyped(\n value: any,\n ignoreDiscriminator: boolean,\n): OperatorDto {\n return value as OperatorDto;\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n/* eslint-disable */\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n/**\n * Supported Types of values for the right hand side of an expression\n * @export\n */\nexport const UiPolicyLiteralType = {\n String: 'STRING',\n StringList: 'STRING_LIST',\n Json: 'JSON',\n} as const;\nexport type UiPolicyLiteralType =\n (typeof UiPolicyLiteralType)[keyof typeof UiPolicyLiteralType];\n\nexport function instanceOfUiPolicyLiteralType(value: any): boolean {\n for (const key in UiPolicyLiteralType) {\n if (Object.prototype.hasOwnProperty.call(UiPolicyLiteralType, key)) {\n if (\n UiPolicyLiteralType[key as keyof typeof UiPolicyLiteralType] ===\n value\n ) {\n return true;\n }\n }\n }\n return false;\n}\n\nexport function UiPolicyLiteralTypeFromJSON(json: any): UiPolicyLiteralType {\n return UiPolicyLiteralTypeFromJSONTyped(json, false);\n}\n\nexport function UiPolicyLiteralTypeFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): UiPolicyLiteralType {\n return json as UiPolicyLiteralType;\n}\n\nexport function UiPolicyLiteralTypeToJSON(\n value?: UiPolicyLiteralType | null,\n): any {\n return value as any;\n}\n\nexport function UiPolicyLiteralTypeToJSONTyped(\n value: any,\n ignoreDiscriminator: boolean,\n): UiPolicyLiteralType {\n return value as UiPolicyLiteralType;\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {UiPolicyLiteralType} from './UiPolicyLiteralType';\nimport {\n UiPolicyLiteralTypeFromJSON,\n UiPolicyLiteralTypeFromJSONTyped,\n UiPolicyLiteralTypeToJSON,\n UiPolicyLiteralTypeToJSONTyped,\n} from './UiPolicyLiteralType';\n\n/**\n * Sum type: A String, a list of Strings or a generic JSON value.\n * @export\n * @interface UiPolicyLiteral\n */\nexport interface UiPolicyLiteral {\n /**\n * Value Type\n * @type {UiPolicyLiteralType}\n * @memberof UiPolicyLiteral\n */\n type: UiPolicyLiteralType;\n /**\n * Only for types STRING and JSON\n * @type {string}\n * @memberof UiPolicyLiteral\n */\n value?: string;\n /**\n * Only for type STRING_LIST\n * @type {Array<string>}\n * @memberof UiPolicyLiteral\n */\n valueList?: Array<string>;\n}\n\n/**\n * Check if a given object implements the UiPolicyLiteral interface.\n */\nexport function instanceOfUiPolicyLiteral(\n value: any,\n): value is UiPolicyLiteral {\n if (!('type' in value) || value['type'] === undefined) return false;\n return true;\n}\n\nexport function UiPolicyLiteralFromJSON(json: any): UiPolicyLiteral {\n return UiPolicyLiteralFromJSONTyped(json, false);\n}\n\nexport function UiPolicyLiteralFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): UiPolicyLiteral {\n if (json == null) {\n return json;\n }\n return {\n type: UiPolicyLiteralTypeFromJSON(json['type']),\n value: json['value'] == null ? undefined : json['value'],\n valueList: json['valueList'] == null ? undefined : json['valueList'],\n };\n}\n\nexport function UiPolicyLiteralToJSON(json: any): UiPolicyLiteral {\n return UiPolicyLiteralToJSONTyped(json, false);\n}\n\nexport function UiPolicyLiteralToJSONTyped(\n value?: UiPolicyLiteral | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n type: UiPolicyLiteralTypeToJSON(value['type']),\n value: value['value'],\n valueList: value['valueList'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {OperatorDto} from './OperatorDto';\nimport {\n OperatorDtoFromJSON,\n OperatorDtoFromJSONTyped,\n OperatorDtoToJSON,\n OperatorDtoToJSONTyped,\n} from './OperatorDto';\nimport type {UiPolicyLiteral} from './UiPolicyLiteral';\nimport {\n UiPolicyLiteralFromJSON,\n UiPolicyLiteralFromJSONTyped,\n UiPolicyLiteralToJSON,\n UiPolicyLiteralToJSONTyped,\n} from './UiPolicyLiteral';\n\n/**\n * ODRL AtomicConstraint as supported by the sovity product landscape. For example 'a EQ b', 'c IN [d, e, f]'\n * @export\n * @interface UiPolicyConstraint\n */\nexport interface UiPolicyConstraint {\n /**\n * Left side of the expression.\n * @type {string}\n * @memberof UiPolicyConstraint\n */\n left: string;\n /**\n * Operator, e.g. EQ\n * @type {OperatorDto}\n * @memberof UiPolicyConstraint\n */\n operator: OperatorDto;\n /**\n * Right side of the expression\n * @type {UiPolicyLiteral}\n * @memberof UiPolicyConstraint\n */\n right: UiPolicyLiteral;\n}\n\n/**\n * Check if a given object implements the UiPolicyConstraint interface.\n */\nexport function instanceOfUiPolicyConstraint(\n value: any,\n): value is UiPolicyConstraint {\n if (!('left' in value) || value['left'] === undefined) return false;\n if (!('operator' in value) || value['operator'] === undefined) return false;\n if (!('right' in value) || value['right'] === undefined) return false;\n return true;\n}\n\nexport function UiPolicyConstraintFromJSON(json: any): UiPolicyConstraint {\n return UiPolicyConstraintFromJSONTyped(json, false);\n}\n\nexport function UiPolicyConstraintFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): UiPolicyConstraint {\n if (json == null) {\n return json;\n }\n return {\n left: json['left'],\n operator: OperatorDtoFromJSON(json['operator']),\n right: UiPolicyLiteralFromJSON(json['right']),\n };\n}\n\nexport function UiPolicyConstraintToJSON(json: any): UiPolicyConstraint {\n return UiPolicyConstraintToJSONTyped(json, false);\n}\n\nexport function UiPolicyConstraintToJSONTyped(\n value?: UiPolicyConstraint | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n left: value['left'],\n operator: OperatorDtoToJSON(value['operator']),\n right: UiPolicyLiteralToJSON(value['right']),\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n/* eslint-disable */\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n/**\n * Ui Policy Expression types:\n * * `CONSTRAINT` - Expression 'a=b'\n * * `AND` - Conjunction of several expressions. Evaluates to true iff all child expressions are true.\n * * `OR` - Disjunction of several expressions. Evaluates to true iff at least one child expression is true.\n * * `XONE` - XONE operation. Evaluates to true iff exactly one child expression is true.\n *\n * @export\n */\nexport const UiPolicyExpressionType = {\n Empty: 'EMPTY',\n Constraint: 'CONSTRAINT',\n And: 'AND',\n Or: 'OR',\n Xone: 'XONE',\n} as const;\nexport type UiPolicyExpressionType =\n (typeof UiPolicyExpressionType)[keyof typeof UiPolicyExpressionType];\n\nexport function instanceOfUiPolicyExpressionType(value: any): boolean {\n for (const key in UiPolicyExpressionType) {\n if (Object.prototype.hasOwnProperty.call(UiPolicyExpressionType, key)) {\n if (\n UiPolicyExpressionType[\n key as keyof typeof UiPolicyExpressionType\n ] === value\n ) {\n return true;\n }\n }\n }\n return false;\n}\n\nexport function UiPolicyExpressionTypeFromJSON(\n json: any,\n): UiPolicyExpressionType {\n return UiPolicyExpressionTypeFromJSONTyped(json, false);\n}\n\nexport function UiPolicyExpressionTypeFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): UiPolicyExpressionType {\n return json as UiPolicyExpressionType;\n}\n\nexport function UiPolicyExpressionTypeToJSON(\n value?: UiPolicyExpressionType | null,\n): any {\n return value as any;\n}\n\nexport function UiPolicyExpressionTypeToJSONTyped(\n value: any,\n ignoreDiscriminator: boolean,\n): UiPolicyExpressionType {\n return value as UiPolicyExpressionType;\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {UiPolicyConstraint} from './UiPolicyConstraint';\nimport {\n UiPolicyConstraintFromJSON,\n UiPolicyConstraintFromJSONTyped,\n UiPolicyConstraintToJSON,\n UiPolicyConstraintToJSONTyped,\n} from './UiPolicyConstraint';\nimport type {UiPolicyExpressionType} from './UiPolicyExpressionType';\nimport {\n UiPolicyExpressionTypeFromJSON,\n UiPolicyExpressionTypeFromJSONTyped,\n UiPolicyExpressionTypeToJSON,\n UiPolicyExpressionTypeToJSONTyped,\n} from './UiPolicyExpressionType';\n\n/**\n * ODRL constraint as supported by the sovity product landscape\n * @export\n * @interface UiPolicyExpression\n */\nexport interface UiPolicyExpression {\n /**\n * Expression type\n * @type {UiPolicyExpressionType}\n * @memberof UiPolicyExpression\n */\n type: UiPolicyExpressionType;\n /**\n * Only for types AND, OR, XONE. List of sub-expressions to be evaluated according to the expressionType.\n * @type {Array<UiPolicyExpression>}\n * @memberof UiPolicyExpression\n */\n expressions?: Array<UiPolicyExpression>;\n /**\n * Only for type CONSTRAINT. A single constraint.\n * @type {UiPolicyConstraint}\n * @memberof UiPolicyExpression\n */\n constraint?: UiPolicyConstraint;\n}\n\n/**\n * Check if a given object implements the UiPolicyExpression interface.\n */\nexport function instanceOfUiPolicyExpression(\n value: any,\n): value is UiPolicyExpression {\n if (!('type' in value) || value['type'] === undefined) return false;\n return true;\n}\n\nexport function UiPolicyExpressionFromJSON(json: any): UiPolicyExpression {\n return UiPolicyExpressionFromJSONTyped(json, false);\n}\n\nexport function UiPolicyExpressionFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): UiPolicyExpression {\n if (json == null) {\n return json;\n }\n return {\n type: UiPolicyExpressionTypeFromJSON(json['type']),\n expressions:\n json['expressions'] == null\n ? undefined\n : (json['expressions'] as Array<any>).map(\n UiPolicyExpressionFromJSON,\n ),\n constraint:\n json['constraint'] == null\n ? undefined\n : UiPolicyConstraintFromJSON(json['constraint']),\n };\n}\n\nexport function UiPolicyExpressionToJSON(json: any): UiPolicyExpression {\n return UiPolicyExpressionToJSONTyped(json, false);\n}\n\nexport function UiPolicyExpressionToJSONTyped(\n value?: UiPolicyExpression | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n type: UiPolicyExpressionTypeToJSON(value['type']),\n expressions:\n value['expressions'] == null\n ? undefined\n : (value['expressions'] as Array<any>).map(\n UiPolicyExpressionToJSON,\n ),\n constraint: UiPolicyConstraintToJSON(value['constraint']),\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {UiPolicyExpression} from './UiPolicyExpression';\nimport {\n UiPolicyExpressionFromJSON,\n UiPolicyExpressionFromJSONTyped,\n UiPolicyExpressionToJSON,\n UiPolicyExpressionToJSONTyped,\n} from './UiPolicyExpression';\n\n/**\n * Type-Safe OpenAPI generator friendly ODLR policy subset as endorsed by sovity.\n * @export\n * @interface UiPolicy\n */\nexport interface UiPolicy {\n /**\n * EDC Policy JSON-LD. This is required because the EDC requires the full policy when initiating contract negotiations.\n * @type {string}\n * @memberof UiPolicy\n */\n policyJsonLd: string;\n /**\n * Policy expression\n * @type {UiPolicyExpression}\n * @memberof UiPolicy\n */\n expression?: UiPolicyExpression;\n /**\n * When trying to reduce the policy JSON-LD to our opinionated subset of functionalities, many fields and functionalities are unsupported. Should any discrepancies occur during the mapping process, we'll collect them here.\n * @type {Array<string>}\n * @memberof UiPolicy\n */\n errors: Array<string>;\n}\n\n/**\n * Check if a given object implements the UiPolicy interface.\n */\nexport function instanceOfUiPolicy(value: any): value is UiPolicy {\n if (!('policyJsonLd' in value) || value['policyJsonLd'] === undefined)\n return false;\n if (!('errors' in value) || value['errors'] === undefined) return false;\n return true;\n}\n\nexport function UiPolicyFromJSON(json: any): UiPolicy {\n return UiPolicyFromJSONTyped(json, false);\n}\n\nexport function UiPolicyFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): UiPolicy {\n if (json == null) {\n return json;\n }\n return {\n policyJsonLd: json['policyJsonLd'],\n expression:\n json['expression'] == null\n ? undefined\n : UiPolicyExpressionFromJSON(json['expression']),\n errors: json['errors'],\n };\n}\n\nexport function UiPolicyToJSON(json: any): UiPolicy {\n return UiPolicyToJSONTyped(json, false);\n}\n\nexport function UiPolicyToJSONTyped(\n value?: UiPolicy | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n policyJsonLd: value['policyJsonLd'],\n expression: UiPolicyExpressionToJSON(value['expression']),\n errors: value['errors'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {ContractAgreementDirection} from './ContractAgreementDirection';\nimport {\n ContractAgreementDirectionFromJSON,\n ContractAgreementDirectionFromJSONTyped,\n ContractAgreementDirectionToJSON,\n ContractAgreementDirectionToJSONTyped,\n} from './ContractAgreementDirection';\nimport type {ContractAgreementTerminationInfo} from './ContractAgreementTerminationInfo';\nimport {\n ContractAgreementTerminationInfoFromJSON,\n ContractAgreementTerminationInfoFromJSONTyped,\n ContractAgreementTerminationInfoToJSON,\n ContractAgreementTerminationInfoToJSONTyped,\n} from './ContractAgreementTerminationInfo';\nimport type {ContractAgreementTransferProcess} from './ContractAgreementTransferProcess';\nimport {\n ContractAgreementTransferProcessFromJSON,\n ContractAgreementTransferProcessFromJSONTyped,\n ContractAgreementTransferProcessToJSON,\n ContractAgreementTransferProcessToJSONTyped,\n} from './ContractAgreementTransferProcess';\nimport type {ContractTerminationStatus} from './ContractTerminationStatus';\nimport {\n ContractTerminationStatusFromJSON,\n ContractTerminationStatusFromJSONTyped,\n ContractTerminationStatusToJSON,\n ContractTerminationStatusToJSONTyped,\n} from './ContractTerminationStatus';\nimport type {UiAsset} from './UiAsset';\nimport {\n UiAssetFromJSON,\n UiAssetFromJSONTyped,\n UiAssetToJSON,\n UiAssetToJSONTyped,\n} from './UiAsset';\nimport type {UiPolicy} from './UiPolicy';\nimport {\n UiPolicyFromJSON,\n UiPolicyFromJSONTyped,\n UiPolicyToJSON,\n UiPolicyToJSONTyped,\n} from './UiPolicy';\n\n/**\n * Contract Agreement for Contract Agreement Page\n * @export\n * @interface ContractAgreementCard\n */\nexport interface ContractAgreementCard {\n /**\n * Contract Agreement ID\n * @type {string}\n * @memberof ContractAgreementCard\n */\n contractAgreementId: string;\n /**\n * Contract Negotiation ID\n * @type {string}\n * @memberof ContractAgreementCard\n */\n contractNegotiationId: string;\n /**\n * Incoming vs Outgoing\n * @type {ContractAgreementDirection}\n * @memberof ContractAgreementCard\n */\n direction: ContractAgreementDirection;\n /**\n * Other Connector's Endpoint\n * @type {string}\n * @memberof ContractAgreementCard\n */\n counterPartyAddress: string;\n /**\n * Other Connector's ID\n * @type {string}\n * @memberof ContractAgreementCard\n */\n counterPartyId: string;\n /**\n * Contract Agreements Signing Date\n * @type {Date}\n * @memberof ContractAgreementCard\n */\n contractSigningDate: Date;\n /**\n * Asset details\n * @type {UiAsset}\n * @memberof ContractAgreementCard\n */\n asset: UiAsset;\n /**\n * Contract Policy\n * @type {UiPolicy}\n * @memberof ContractAgreementCard\n */\n contractPolicy: UiPolicy;\n /**\n * Contract Agreement's Transfer Processes\n * @type {Array<ContractAgreementTransferProcess>}\n * @memberof ContractAgreementCard\n */\n transferProcesses: Array<ContractAgreementTransferProcess>;\n /**\n * Contract Agreement's Termination Status\n * @type {ContractTerminationStatus}\n * @memberof ContractAgreementCard\n */\n terminationStatus: ContractTerminationStatus;\n /**\n * Contract Agreement's Metadata\n * @type {ContractAgreementTerminationInfo}\n * @memberof ContractAgreementCard\n */\n terminationInformation?: ContractAgreementTerminationInfo;\n}\n\n/**\n * Check if a given object implements the ContractAgreementCard interface.\n */\nexport function instanceOfContractAgreementCard(\n value: any,\n): value is ContractAgreementCard {\n if (\n !('contractAgreementId' in value) ||\n value['contractAgreementId'] === undefined\n )\n return false;\n if (\n !('contractNegotiationId' in value) ||\n value['contractNegotiationId'] === undefined\n )\n return false;\n if (!('direction' in value) || value['direction'] === undefined)\n return false;\n if (\n !('counterPartyAddress' in value) ||\n value['counterPartyAddress'] === undefined\n )\n return false;\n if (!('counterPartyId' in value) || value['counterPartyId'] === undefined)\n return false;\n if (\n !('contractSigningDate' in value) ||\n value['contractSigningDate'] === undefined\n )\n return false;\n if (!('asset' in value) || value['asset'] === undefined) return false;\n if (!('contractPolicy' in value) || value['contractPolicy'] === undefined)\n return false;\n if (\n !('transferProcesses' in value) ||\n value['transferProcesses'] === undefined\n )\n return false;\n if (\n !('terminationStatus' in value) ||\n value['terminationStatus'] === undefined\n )\n return false;\n return true;\n}\n\nexport function ContractAgreementCardFromJSON(\n json: any,\n): ContractAgreementCard {\n return ContractAgreementCardFromJSONTyped(json, false);\n}\n\nexport function ContractAgreementCardFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): ContractAgreementCard {\n if (json == null) {\n return json;\n }\n return {\n contractAgreementId: json['contractAgreementId'],\n contractNegotiationId: json['contractNegotiationId'],\n direction: ContractAgreementDirectionFromJSON(json['direction']),\n counterPartyAddress: json['counterPartyAddress'],\n counterPartyId: json['counterPartyId'],\n contractSigningDate: new Date(json['contractSigningDate']),\n asset: UiAssetFromJSON(json['asset']),\n contractPolicy: UiPolicyFromJSON(json['contractPolicy']),\n transferProcesses: (json['transferProcesses'] as Array<any>).map(\n ContractAgreementTransferProcessFromJSON,\n ),\n terminationStatus: ContractTerminationStatusFromJSON(\n json['terminationStatus'],\n ),\n terminationInformation:\n json['terminationInformation'] == null\n ? undefined\n : ContractAgreementTerminationInfoFromJSON(\n json['terminationInformation'],\n ),\n };\n}\n\nexport function ContractAgreementCardToJSON(json: any): ContractAgreementCard {\n return ContractAgreementCardToJSONTyped(json, false);\n}\n\nexport function ContractAgreementCardToJSONTyped(\n value?: ContractAgreementCard | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n contractAgreementId: value['contractAgreementId'],\n contractNegotiationId: value['contractNegotiationId'],\n direction: ContractAgreementDirectionToJSON(value['direction']),\n counterPartyAddress: value['counterPartyAddress'],\n counterPartyId: value['counterPartyId'],\n contractSigningDate: value['contractSigningDate'].toISOString(),\n asset: UiAssetToJSON(value['asset']),\n contractPolicy: UiPolicyToJSON(value['contractPolicy']),\n transferProcesses: (value['transferProcesses'] as Array<any>).map(\n ContractAgreementTransferProcessToJSON,\n ),\n terminationStatus: ContractTerminationStatusToJSON(\n value['terminationStatus'],\n ),\n terminationInformation: ContractAgreementTerminationInfoToJSON(\n value['terminationInformation'],\n ),\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {ContractAgreementCard} from './ContractAgreementCard';\nimport {\n ContractAgreementCardFromJSON,\n ContractAgreementCardFromJSONTyped,\n ContractAgreementCardToJSON,\n ContractAgreementCardToJSONTyped,\n} from './ContractAgreementCard';\n\n/**\n * Data as required by the UI's Contract Agreement Page\n * @export\n * @interface ContractAgreementPage\n */\nexport interface ContractAgreementPage {\n /**\n * Contract Agreement Cards\n * @type {Array<ContractAgreementCard>}\n * @memberof ContractAgreementPage\n */\n contractAgreements: Array<ContractAgreementCard>;\n}\n\n/**\n * Check if a given object implements the ContractAgreementPage interface.\n */\nexport function instanceOfContractAgreementPage(\n value: any,\n): value is ContractAgreementPage {\n if (\n !('contractAgreements' in value) ||\n value['contractAgreements'] === undefined\n )\n return false;\n return true;\n}\n\nexport function ContractAgreementPageFromJSON(\n json: any,\n): ContractAgreementPage {\n return ContractAgreementPageFromJSONTyped(json, false);\n}\n\nexport function ContractAgreementPageFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): ContractAgreementPage {\n if (json == null) {\n return json;\n }\n return {\n contractAgreements: (json['contractAgreements'] as Array<any>).map(\n ContractAgreementCardFromJSON,\n ),\n };\n}\n\nexport function ContractAgreementPageToJSON(json: any): ContractAgreementPage {\n return ContractAgreementPageToJSONTyped(json, false);\n}\n\nexport function ContractAgreementPageToJSONTyped(\n value?: ContractAgreementPage | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n contractAgreements: (value['contractAgreements'] as Array<any>).map(\n ContractAgreementCardToJSON,\n ),\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {ContractTerminationStatus} from './ContractTerminationStatus';\nimport {\n ContractTerminationStatusFromJSON,\n ContractTerminationStatusFromJSONTyped,\n ContractTerminationStatusToJSON,\n ContractTerminationStatusToJSONTyped,\n} from './ContractTerminationStatus';\n\n/**\n * Filters for querying a Contract Contract Agreement Page\n * @export\n * @interface ContractAgreementPageQuery\n */\nexport interface ContractAgreementPageQuery {\n /**\n * Optionally filter the resulting contract agreements by their termination status.\n * @type {ContractTerminationStatus}\n * @memberof ContractAgreementPageQuery\n */\n terminationStatus?: ContractTerminationStatus;\n}\n\n/**\n * Check if a given object implements the ContractAgreementPageQuery interface.\n */\nexport function instanceOfContractAgreementPageQuery(\n value: any,\n): value is ContractAgreementPageQuery {\n return true;\n}\n\nexport function ContractAgreementPageQueryFromJSON(\n json: any,\n): ContractAgreementPageQuery {\n return ContractAgreementPageQueryFromJSONTyped(json, false);\n}\n\nexport function ContractAgreementPageQueryFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): ContractAgreementPageQuery {\n if (json == null) {\n return json;\n }\n return {\n terminationStatus:\n json['terminationStatus'] == null\n ? undefined\n : ContractTerminationStatusFromJSON(json['terminationStatus']),\n };\n}\n\nexport function ContractAgreementPageQueryToJSON(\n json: any,\n): ContractAgreementPageQuery {\n return ContractAgreementPageQueryToJSONTyped(json, false);\n}\n\nexport function ContractAgreementPageQueryToJSONTyped(\n value?: ContractAgreementPageQuery | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n terminationStatus: ContractTerminationStatusToJSON(\n value['terminationStatus'],\n ),\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n/* eslint-disable */\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n/**\n * Value type of an asset selector criterion right expression value\n * @export\n */\nexport const UiCriterionLiteralType = {\n Value: 'VALUE',\n ValueList: 'VALUE_LIST',\n} as const;\nexport type UiCriterionLiteralType =\n (typeof UiCriterionLiteralType)[keyof typeof UiCriterionLiteralType];\n\nexport function instanceOfUiCriterionLiteralType(value: any): boolean {\n for (const key in UiCriterionLiteralType) {\n if (Object.prototype.hasOwnProperty.call(UiCriterionLiteralType, key)) {\n if (\n UiCriterionLiteralType[\n key as keyof typeof UiCriterionLiteralType\n ] === value\n ) {\n return true;\n }\n }\n }\n return false;\n}\n\nexport function UiCriterionLiteralTypeFromJSON(\n json: any,\n): UiCriterionLiteralType {\n return UiCriterionLiteralTypeFromJSONTyped(json, false);\n}\n\nexport function UiCriterionLiteralTypeFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): UiCriterionLiteralType {\n return json as UiCriterionLiteralType;\n}\n\nexport function UiCriterionLiteralTypeToJSON(\n value?: UiCriterionLiteralType | null,\n): any {\n return value as any;\n}\n\nexport function UiCriterionLiteralTypeToJSONTyped(\n value: any,\n ignoreDiscriminator: boolean,\n): UiCriterionLiteralType {\n return value as UiCriterionLiteralType;\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {UiCriterionLiteralType} from './UiCriterionLiteralType';\nimport {\n UiCriterionLiteralTypeFromJSON,\n UiCriterionLiteralTypeFromJSONTyped,\n UiCriterionLiteralTypeToJSON,\n UiCriterionLiteralTypeToJSONTyped,\n} from './UiCriterionLiteralType';\n\n/**\n * Criterion Literal\n * @export\n * @interface UiCriterionLiteral\n */\nexport interface UiCriterionLiteral {\n /**\n *\n * @type {UiCriterionLiteralType}\n * @memberof UiCriterionLiteral\n * @deprecated\n */\n type?: UiCriterionLiteralType;\n /**\n * Only for type VALUE. The single value representation.\n * @type {string}\n * @memberof UiCriterionLiteral\n */\n value?: string;\n /**\n * Only for type VALUE_LIST. List of values, e.g. for the IN-Operator.\n * @type {Array<string>}\n * @memberof UiCriterionLiteral\n */\n valueList?: Array<string>;\n}\n\n/**\n * Check if a given object implements the UiCriterionLiteral interface.\n */\nexport function instanceOfUiCriterionLiteral(\n value: any,\n): value is UiCriterionLiteral {\n return true;\n}\n\nexport function UiCriterionLiteralFromJSON(json: any): UiCriterionLiteral {\n return UiCriterionLiteralFromJSONTyped(json, false);\n}\n\nexport function UiCriterionLiteralFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): UiCriterionLiteral {\n if (json == null) {\n return json;\n }\n return {\n type:\n json['type'] == null\n ? undefined\n : UiCriterionLiteralTypeFromJSON(json['type']),\n value: json['value'] == null ? undefined : json['value'],\n valueList: json['valueList'] == null ? undefined : json['valueList'],\n };\n}\n\nexport function UiCriterionLiteralToJSON(json: any): UiCriterionLiteral {\n return UiCriterionLiteralToJSONTyped(json, false);\n}\n\nexport function UiCriterionLiteralToJSONTyped(\n value?: UiCriterionLiteral | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n type: UiCriterionLiteralTypeToJSON(value['type']),\n value: value['value'],\n valueList: value['valueList'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n/* eslint-disable */\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n/**\n * Operator for constraints\n * @export\n */\nexport const UiCriterionOperator = {\n Eq: 'EQ',\n In: 'IN',\n Like: 'LIKE',\n} as const;\nexport type UiCriterionOperator =\n (typeof UiCriterionOperator)[keyof typeof UiCriterionOperator];\n\nexport function instanceOfUiCriterionOperator(value: any): boolean {\n for (const key in UiCriterionOperator) {\n if (Object.prototype.hasOwnProperty.call(UiCriterionOperator, key)) {\n if (\n UiCriterionOperator[key as keyof typeof UiCriterionOperator] ===\n value\n ) {\n return true;\n }\n }\n }\n return false;\n}\n\nexport function UiCriterionOperatorFromJSON(json: any): UiCriterionOperator {\n return UiCriterionOperatorFromJSONTyped(json, false);\n}\n\nexport function UiCriterionOperatorFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): UiCriterionOperator {\n return json as UiCriterionOperator;\n}\n\nexport function UiCriterionOperatorToJSON(\n value?: UiCriterionOperator | null,\n): any {\n return value as any;\n}\n\nexport function UiCriterionOperatorToJSONTyped(\n value: any,\n ignoreDiscriminator: boolean,\n): UiCriterionOperator {\n return value as UiCriterionOperator;\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {UiCriterionLiteral} from './UiCriterionLiteral';\nimport {\n UiCriterionLiteralFromJSON,\n UiCriterionLiteralFromJSONTyped,\n UiCriterionLiteralToJSON,\n UiCriterionLiteralToJSONTyped,\n} from './UiCriterionLiteral';\nimport type {UiCriterionOperator} from './UiCriterionOperator';\nimport {\n UiCriterionOperatorFromJSON,\n UiCriterionOperatorFromJSONTyped,\n UiCriterionOperatorToJSON,\n UiCriterionOperatorToJSONTyped,\n} from './UiCriterionOperator';\n\n/**\n * Contract Definition Criterion as supported by the UI. Will be replaced by [AssetFilterConstraint] over time for better typing of asset property paths.\n * @export\n * @interface UiCriterion\n */\nexport interface UiCriterion {\n /**\n * Left Operand\n * @type {string}\n * @memberof UiCriterion\n */\n operandLeft: string;\n /**\n * Operator\n * @type {UiCriterionOperator}\n * @memberof UiCriterion\n * @deprecated\n */\n operator: UiCriterionOperator;\n /**\n * Right Operand\n * @type {UiCriterionLiteral}\n * @memberof UiCriterion\n * @deprecated\n */\n operandRight: UiCriterionLiteral;\n}\n\n/**\n * Check if a given object implements the UiCriterion interface.\n */\nexport function instanceOfUiCriterion(value: any): value is UiCriterion {\n if (!('operandLeft' in value) || value['operandLeft'] === undefined)\n return false;\n if (!('operator' in value) || value['operator'] === undefined) return false;\n if (!('operandRight' in value) || value['operandRight'] === undefined)\n return false;\n return true;\n}\n\nexport function UiCriterionFromJSON(json: any): UiCriterion {\n return UiCriterionFromJSONTyped(json, false);\n}\n\nexport function UiCriterionFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): UiCriterion {\n if (json == null) {\n return json;\n }\n return {\n operandLeft: json['operandLeft'],\n operator: UiCriterionOperatorFromJSON(json['operator']),\n operandRight: UiCriterionLiteralFromJSON(json['operandRight']),\n };\n}\n\nexport function UiCriterionToJSON(json: any): UiCriterion {\n return UiCriterionToJSONTyped(json, false);\n}\n\nexport function UiCriterionToJSONTyped(\n value?: UiCriterion | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n operandLeft: value['operandLeft'],\n operator: UiCriterionOperatorToJSON(value['operator']),\n operandRight: UiCriterionLiteralToJSON(value['operandRight']),\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {UiCriterion} from './UiCriterion';\nimport {\n UiCriterionFromJSON,\n UiCriterionFromJSONTyped,\n UiCriterionToJSON,\n UiCriterionToJSONTyped,\n} from './UiCriterion';\n\n/**\n * Contract Definition List Entry for Contract Definition Page\n * @export\n * @interface ContractDefinitionEntry\n */\nexport interface ContractDefinitionEntry {\n /**\n * Contract Definition ID\n * @type {string}\n * @memberof ContractDefinitionEntry\n */\n contractDefinitionId: string;\n /**\n * Access Policy ID\n * @type {string}\n * @memberof ContractDefinitionEntry\n */\n accessPolicyId: string;\n /**\n * Contract Policy ID\n * @type {string}\n * @memberof ContractDefinitionEntry\n */\n contractPolicyId: string;\n /**\n * Criteria for the contract\n * @type {Array<UiCriterion>}\n * @memberof ContractDefinitionEntry\n */\n assetSelector: Array<UiCriterion>;\n}\n\n/**\n * Check if a given object implements the ContractDefinitionEntry interface.\n */\nexport function instanceOfContractDefinitionEntry(\n value: any,\n): value is ContractDefinitionEntry {\n if (\n !('contractDefinitionId' in value) ||\n value['contractDefinitionId'] === undefined\n )\n return false;\n if (!('accessPolicyId' in value) || value['accessPolicyId'] === undefined)\n return false;\n if (\n !('contractPolicyId' in value) ||\n value['contractPolicyId'] === undefined\n )\n return false;\n if (!('assetSelector' in value) || value['assetSelector'] === undefined)\n return false;\n return true;\n}\n\nexport function ContractDefinitionEntryFromJSON(\n json: any,\n): ContractDefinitionEntry {\n return ContractDefinitionEntryFromJSONTyped(json, false);\n}\n\nexport function ContractDefinitionEntryFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): ContractDefinitionEntry {\n if (json == null) {\n return json;\n }\n return {\n contractDefinitionId: json['contractDefinitionId'],\n accessPolicyId: json['accessPolicyId'],\n contractPolicyId: json['contractPolicyId'],\n assetSelector: (json['assetSelector'] as Array<any>).map(\n UiCriterionFromJSON,\n ),\n };\n}\n\nexport function ContractDefinitionEntryToJSON(\n json: any,\n): ContractDefinitionEntry {\n return ContractDefinitionEntryToJSONTyped(json, false);\n}\n\nexport function ContractDefinitionEntryToJSONTyped(\n value?: ContractDefinitionEntry | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n contractDefinitionId: value['contractDefinitionId'],\n accessPolicyId: value['accessPolicyId'],\n contractPolicyId: value['contractPolicyId'],\n assetSelector: (value['assetSelector'] as Array<any>).map(\n UiCriterionToJSON,\n ),\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {ContractDefinitionEntry} from './ContractDefinitionEntry';\nimport {\n ContractDefinitionEntryFromJSON,\n ContractDefinitionEntryFromJSONTyped,\n ContractDefinitionEntryToJSON,\n ContractDefinitionEntryToJSONTyped,\n} from './ContractDefinitionEntry';\n\n/**\n * Data as required by the UI's Contract Definition Page. Will be replaced with a Catalog Definition Page that shall support asset property paths properly\n * @export\n * @interface ContractDefinitionPage\n */\nexport interface ContractDefinitionPage {\n /**\n * Contract Definition Entries\n * @type {Array<ContractDefinitionEntry>}\n * @memberof ContractDefinitionPage\n */\n contractDefinitions: Array<ContractDefinitionEntry>;\n}\n\n/**\n * Check if a given object implements the ContractDefinitionPage interface.\n */\nexport function instanceOfContractDefinitionPage(\n value: any,\n): value is ContractDefinitionPage {\n if (\n !('contractDefinitions' in value) ||\n value['contractDefinitions'] === undefined\n )\n return false;\n return true;\n}\n\nexport function ContractDefinitionPageFromJSON(\n json: any,\n): ContractDefinitionPage {\n return ContractDefinitionPageFromJSONTyped(json, false);\n}\n\nexport function ContractDefinitionPageFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): ContractDefinitionPage {\n if (json == null) {\n return json;\n }\n return {\n contractDefinitions: (json['contractDefinitions'] as Array<any>).map(\n ContractDefinitionEntryFromJSON,\n ),\n };\n}\n\nexport function ContractDefinitionPageToJSON(\n json: any,\n): ContractDefinitionPage {\n return ContractDefinitionPageToJSONTyped(json, false);\n}\n\nexport function ContractDefinitionPageToJSONTyped(\n value?: ContractDefinitionPage | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n contractDefinitions: (value['contractDefinitions'] as Array<any>).map(\n ContractDefinitionEntryToJSON,\n ),\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {UiCriterion} from './UiCriterion';\nimport {\n UiCriterionFromJSON,\n UiCriterionFromJSONTyped,\n UiCriterionToJSON,\n UiCriterionToJSONTyped,\n} from './UiCriterion';\n\n/**\n * Data for creating a Contract Definition\n * @export\n * @interface ContractDefinitionRequest\n */\nexport interface ContractDefinitionRequest {\n /**\n * Contract Definition ID\n * @type {string}\n * @memberof ContractDefinitionRequest\n */\n contractDefinitionId: string;\n /**\n * Contract Policy ID\n * @type {string}\n * @memberof ContractDefinitionRequest\n */\n contractPolicyId: string;\n /**\n * Access Policy ID\n * @type {string}\n * @memberof ContractDefinitionRequest\n */\n accessPolicyId: string;\n /**\n * List of Criteria for the contract\n * @type {Array<UiCriterion>}\n * @memberof ContractDefinitionRequest\n */\n assetSelector: Array<UiCriterion>;\n}\n\n/**\n * Check if a given object implements the ContractDefinitionRequest interface.\n */\nexport function instanceOfContractDefinitionRequest(\n value: any,\n): value is ContractDefinitionRequest {\n if (\n !('contractDefinitionId' in value) ||\n value['contractDefinitionId'] === undefined\n )\n return false;\n if (\n !('contractPolicyId' in value) ||\n value['contractPolicyId'] === undefined\n )\n return false;\n if (!('accessPolicyId' in value) || value['accessPolicyId'] === undefined)\n return false;\n if (!('assetSelector' in value) || value['assetSelector'] === undefined)\n return false;\n return true;\n}\n\nexport function ContractDefinitionRequestFromJSON(\n json: any,\n): ContractDefinitionRequest {\n return ContractDefinitionRequestFromJSONTyped(json, false);\n}\n\nexport function ContractDefinitionRequestFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): ContractDefinitionRequest {\n if (json == null) {\n return json;\n }\n return {\n contractDefinitionId: json['contractDefinitionId'],\n contractPolicyId: json['contractPolicyId'],\n accessPolicyId: json['accessPolicyId'],\n assetSelector: (json['assetSelector'] as Array<any>).map(\n UiCriterionFromJSON,\n ),\n };\n}\n\nexport function ContractDefinitionRequestToJSON(\n json: any,\n): ContractDefinitionRequest {\n return ContractDefinitionRequestToJSONTyped(json, false);\n}\n\nexport function ContractDefinitionRequestToJSONTyped(\n value?: ContractDefinitionRequest | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n contractDefinitionId: value['contractDefinitionId'],\n contractPolicyId: value['contractPolicyId'],\n accessPolicyId: value['accessPolicyId'],\n assetSelector: (value['assetSelector'] as Array<any>).map(\n UiCriterionToJSON,\n ),\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {CallbackAddressDto} from './CallbackAddressDto';\nimport {\n CallbackAddressDtoFromJSON,\n CallbackAddressDtoFromJSONTyped,\n CallbackAddressDtoToJSON,\n CallbackAddressDtoToJSONTyped,\n} from './CallbackAddressDto';\n\n/**\n * Data for initiating a Contract Negotiation\n * @export\n * @interface ContractNegotiationRequest\n */\nexport interface ContractNegotiationRequest {\n /**\n * Counter Party Id\n * @type {string}\n * @memberof ContractNegotiationRequest\n */\n counterPartyId: string;\n /**\n * Counter Party Address\n * @type {string}\n * @memberof ContractNegotiationRequest\n */\n counterPartyAddress: string;\n /**\n * Contract Offer Dto\n * @type {string}\n * @memberof ContractNegotiationRequest\n */\n contractOfferId: string;\n /**\n * Policy JsonLd\n * @type {string}\n * @memberof ContractNegotiationRequest\n */\n policyJsonLd: string;\n /**\n * Asset ID\n * @type {string}\n * @memberof ContractNegotiationRequest\n */\n assetId: string;\n /**\n * List of endpoints to call upon given transfer events\n * @type {Array<CallbackAddressDto>}\n * @memberof ContractNegotiationRequest\n */\n callbackAddresses?: Array<CallbackAddressDto>;\n}\n\n/**\n * Check if a given object implements the ContractNegotiationRequest interface.\n */\nexport function instanceOfContractNegotiationRequest(\n value: any,\n): value is ContractNegotiationRequest {\n if (!('counterPartyId' in value) || value['counterPartyId'] === undefined)\n return false;\n if (\n !('counterPartyAddress' in value) ||\n value['counterPartyAddress'] === undefined\n )\n return false;\n if (!('contractOfferId' in value) || value['contractOfferId'] === undefined)\n return false;\n if (!('policyJsonLd' in value) || value['policyJsonLd'] === undefined)\n return false;\n if (!('assetId' in value) || value['assetId'] === undefined) return false;\n return true;\n}\n\nexport function ContractNegotiationRequestFromJSON(\n json: any,\n): ContractNegotiationRequest {\n return ContractNegotiationRequestFromJSONTyped(json, false);\n}\n\nexport function ContractNegotiationRequestFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): ContractNegotiationRequest {\n if (json == null) {\n return json;\n }\n return {\n counterPartyId: json['counterPartyId'],\n counterPartyAddress: json['counterPartyAddress'],\n contractOfferId: json['contractOfferId'],\n policyJsonLd: json['policyJsonLd'],\n assetId: json['assetId'],\n callbackAddresses:\n json['callbackAddresses'] == null\n ? undefined\n : (json['callbackAddresses'] as Array<any>).map(\n CallbackAddressDtoFromJSON,\n ),\n };\n}\n\nexport function ContractNegotiationRequestToJSON(\n json: any,\n): ContractNegotiationRequest {\n return ContractNegotiationRequestToJSONTyped(json, false);\n}\n\nexport function ContractNegotiationRequestToJSONTyped(\n value?: ContractNegotiationRequest | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n counterPartyId: value['counterPartyId'],\n counterPartyAddress: value['counterPartyAddress'],\n contractOfferId: value['contractOfferId'],\n policyJsonLd: value['policyJsonLd'],\n assetId: value['assetId'],\n callbackAddresses:\n value['callbackAddresses'] == null\n ? undefined\n : (value['callbackAddresses'] as Array<any>).map(\n CallbackAddressDtoToJSON,\n ),\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n/* eslint-disable */\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n/**\n * Simplified Contract Negotiation State to be used in UI\n * @export\n */\nexport const ContractNegotiationSimplifiedState = {\n InProgress: 'IN_PROGRESS',\n Agreed: 'AGREED',\n Terminated: 'TERMINATED',\n} as const;\nexport type ContractNegotiationSimplifiedState =\n (typeof ContractNegotiationSimplifiedState)[keyof typeof ContractNegotiationSimplifiedState];\n\nexport function instanceOfContractNegotiationSimplifiedState(\n value: any,\n): boolean {\n for (const key in ContractNegotiationSimplifiedState) {\n if (\n Object.prototype.hasOwnProperty.call(\n ContractNegotiationSimplifiedState,\n key,\n )\n ) {\n if (\n ContractNegotiationSimplifiedState[\n key as keyof typeof ContractNegotiationSimplifiedState\n ] === value\n ) {\n return true;\n }\n }\n }\n return false;\n}\n\nexport function ContractNegotiationSimplifiedStateFromJSON(\n json: any,\n): ContractNegotiationSimplifiedState {\n return ContractNegotiationSimplifiedStateFromJSONTyped(json, false);\n}\n\nexport function ContractNegotiationSimplifiedStateFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): ContractNegotiationSimplifiedState {\n return json as ContractNegotiationSimplifiedState;\n}\n\nexport function ContractNegotiationSimplifiedStateToJSON(\n value?: ContractNegotiationSimplifiedState | null,\n): any {\n return value as any;\n}\n\nexport function ContractNegotiationSimplifiedStateToJSONTyped(\n value: any,\n ignoreDiscriminator: boolean,\n): ContractNegotiationSimplifiedState {\n return value as ContractNegotiationSimplifiedState;\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {ContractNegotiationSimplifiedState} from './ContractNegotiationSimplifiedState';\nimport {\n ContractNegotiationSimplifiedStateFromJSON,\n ContractNegotiationSimplifiedStateFromJSONTyped,\n ContractNegotiationSimplifiedStateToJSON,\n ContractNegotiationSimplifiedStateToJSONTyped,\n} from './ContractNegotiationSimplifiedState';\n\n/**\n * Contract Negotiation State interpreted\n * @export\n * @interface ContractNegotiationState\n */\nexport interface ContractNegotiationState {\n /**\n * State name or 'CUSTOM'. State names only exist for original EDC Contract Negotiation States.\n * @type {string}\n * @memberof ContractNegotiationState\n */\n name: string;\n /**\n * State code\n * @type {number}\n * @memberof ContractNegotiationState\n */\n code: number;\n /**\n * Whether we are running, in an error state or done.\n * @type {ContractNegotiationSimplifiedState}\n * @memberof ContractNegotiationState\n */\n simplifiedState: ContractNegotiationSimplifiedState;\n}\n\n/**\n * Check if a given object implements the ContractNegotiationState interface.\n */\nexport function instanceOfContractNegotiationState(\n value: any,\n): value is ContractNegotiationState {\n if (!('name' in value) || value['name'] === undefined) return false;\n if (!('code' in value) || value['code'] === undefined) return false;\n if (!('simplifiedState' in value) || value['simplifiedState'] === undefined)\n return false;\n return true;\n}\n\nexport function ContractNegotiationStateFromJSON(\n json: any,\n): ContractNegotiationState {\n return ContractNegotiationStateFromJSONTyped(json, false);\n}\n\nexport function ContractNegotiationStateFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): ContractNegotiationState {\n if (json == null) {\n return json;\n }\n return {\n name: json['name'],\n code: json['code'],\n simplifiedState: ContractNegotiationSimplifiedStateFromJSON(\n json['simplifiedState'],\n ),\n };\n}\n\nexport function ContractNegotiationStateToJSON(\n json: any,\n): ContractNegotiationState {\n return ContractNegotiationStateToJSONTyped(json, false);\n}\n\nexport function ContractNegotiationStateToJSONTyped(\n value?: ContractNegotiationState | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n name: value['name'],\n code: value['code'],\n simplifiedState: ContractNegotiationSimplifiedStateToJSON(\n value['simplifiedState'],\n ),\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {ContractAgreementTerminationInfo} from './ContractAgreementTerminationInfo';\nimport {\n ContractAgreementTerminationInfoFromJSON,\n ContractAgreementTerminationInfoFromJSONTyped,\n ContractAgreementTerminationInfoToJSON,\n ContractAgreementTerminationInfoToJSONTyped,\n} from './ContractAgreementTerminationInfo';\nimport type {ContractNegotiationState} from './ContractNegotiationState';\nimport {\n ContractNegotiationStateFromJSON,\n ContractNegotiationStateFromJSONTyped,\n ContractNegotiationStateToJSON,\n ContractNegotiationStateToJSONTyped,\n} from './ContractNegotiationState';\n\n/**\n * Contract Negotiation state\n * @export\n * @interface ContractNegotiationStateResult\n */\nexport interface ContractNegotiationStateResult {\n /**\n * Contract Negotiation ID\n * @type {string}\n * @memberof ContractNegotiationStateResult\n */\n contractNegotiationId: string;\n /**\n * Contract Negotiation State\n * @type {ContractNegotiationState}\n * @memberof ContractNegotiationStateResult\n */\n state: ContractNegotiationState;\n /**\n * Contract Agreement ID\n * @type {string}\n * @memberof ContractNegotiationStateResult\n */\n contractAgreementId?: string;\n /**\n * Contract Agreement Termination State\n * @type {ContractAgreementTerminationInfo}\n * @memberof ContractNegotiationStateResult\n */\n contractAgreementTerminationInfo?: ContractAgreementTerminationInfo;\n /**\n * Contract Negotiation State Last Change\n * @type {Date}\n * @memberof ContractNegotiationStateResult\n */\n stateChangedAt: Date;\n}\n\n/**\n * Check if a given object implements the ContractNegotiationStateResult interface.\n */\nexport function instanceOfContractNegotiationStateResult(\n value: any,\n): value is ContractNegotiationStateResult {\n if (\n !('contractNegotiationId' in value) ||\n value['contractNegotiationId'] === undefined\n )\n return false;\n if (!('state' in value) || value['state'] === undefined) return false;\n if (!('stateChangedAt' in value) || value['stateChangedAt'] === undefined)\n return false;\n return true;\n}\n\nexport function ContractNegotiationStateResultFromJSON(\n json: any,\n): ContractNegotiationStateResult {\n return ContractNegotiationStateResultFromJSONTyped(json, false);\n}\n\nexport function ContractNegotiationStateResultFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): ContractNegotiationStateResult {\n if (json == null) {\n return json;\n }\n return {\n contractNegotiationId: json['contractNegotiationId'],\n state: ContractNegotiationStateFromJSON(json['state']),\n contractAgreementId:\n json['contractAgreementId'] == null\n ? undefined\n : json['contractAgreementId'],\n contractAgreementTerminationInfo:\n json['contractAgreementTerminationInfo'] == null\n ? undefined\n : ContractAgreementTerminationInfoFromJSON(\n json['contractAgreementTerminationInfo'],\n ),\n stateChangedAt: new Date(json['stateChangedAt']),\n };\n}\n\nexport function ContractNegotiationStateResultToJSON(\n json: any,\n): ContractNegotiationStateResult {\n return ContractNegotiationStateResultToJSONTyped(json, false);\n}\n\nexport function ContractNegotiationStateResultToJSONTyped(\n value?: ContractNegotiationStateResult | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n contractNegotiationId: value['contractNegotiationId'],\n state: ContractNegotiationStateToJSON(value['state']),\n contractAgreementId: value['contractAgreementId'],\n contractAgreementTerminationInfo:\n ContractAgreementTerminationInfoToJSON(\n value['contractAgreementTerminationInfo'],\n ),\n stateChangedAt: value['stateChangedAt'].toISOString(),\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\n\n/**\n * Data for terminating a Contract Agreement\n * @export\n * @interface ContractTerminationRequest\n */\nexport interface ContractTerminationRequest {\n /**\n * A user explanation to detail why the contract was terminated.\n * @type {string}\n * @memberof ContractTerminationRequest\n */\n detail: string;\n /**\n * A short reason why this contract was terminated\n * @type {string}\n * @memberof ContractTerminationRequest\n */\n reason: string;\n}\n\n/**\n * Check if a given object implements the ContractTerminationRequest interface.\n */\nexport function instanceOfContractTerminationRequest(\n value: any,\n): value is ContractTerminationRequest {\n if (!('detail' in value) || value['detail'] === undefined) return false;\n if (!('reason' in value) || value['reason'] === undefined) return false;\n return true;\n}\n\nexport function ContractTerminationRequestFromJSON(\n json: any,\n): ContractTerminationRequest {\n return ContractTerminationRequestFromJSONTyped(json, false);\n}\n\nexport function ContractTerminationRequestFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): ContractTerminationRequest {\n if (json == null) {\n return json;\n }\n return {\n detail: json['detail'],\n reason: json['reason'],\n };\n}\n\nexport function ContractTerminationRequestToJSON(\n json: any,\n): ContractTerminationRequest {\n return ContractTerminationRequestToJSONTyped(json, false);\n}\n\nexport function ContractTerminationRequestToJSONTyped(\n value?: ContractTerminationRequest | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n detail: value['detail'],\n reason: value['reason'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\n\n/**\n * Managed Identity Wallet (MIW) Config\n * @export\n * @interface DashboardCxDidConfig\n */\nexport interface DashboardCxDidConfig {\n /**\n * My DID / edc.iam.issuer.id\n * @type {string}\n * @memberof DashboardCxDidConfig\n */\n myDid: string;\n /**\n * Wallet Token Url / edc.iam.sts.oauth.token.url\n * @type {string}\n * @memberof DashboardCxDidConfig\n */\n walletTokenUrl: string;\n /**\n * Trusted VC Issuer / edc.iam.trusted-issuer.cofinity.id\n * @type {string}\n * @memberof DashboardCxDidConfig\n */\n trustedVcIssuer: string;\n /**\n * BDRS Url / tx.iam.iatp.bdrs.server.url\n * @type {string}\n * @memberof DashboardCxDidConfig\n */\n bdrsUrl: string;\n /**\n * STS DIM Url / edc.iam.sts.dim.url\n * @type {string}\n * @memberof DashboardCxDidConfig\n */\n dimUrl: string;\n}\n\n/**\n * Check if a given object implements the DashboardCxDidConfig interface.\n */\nexport function instanceOfDashboardCxDidConfig(\n value: any,\n): value is DashboardCxDidConfig {\n if (!('myDid' in value) || value['myDid'] === undefined) return false;\n if (!('walletTokenUrl' in value) || value['walletTokenUrl'] === undefined)\n return false;\n if (!('trustedVcIssuer' in value) || value['trustedVcIssuer'] === undefined)\n return false;\n if (!('bdrsUrl' in value) || value['bdrsUrl'] === undefined) return false;\n if (!('dimUrl' in value) || value['dimUrl'] === undefined) return false;\n return true;\n}\n\nexport function DashboardCxDidConfigFromJSON(json: any): DashboardCxDidConfig {\n return DashboardCxDidConfigFromJSONTyped(json, false);\n}\n\nexport function DashboardCxDidConfigFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): DashboardCxDidConfig {\n if (json == null) {\n return json;\n }\n return {\n myDid: json['myDid'],\n walletTokenUrl: json['walletTokenUrl'],\n trustedVcIssuer: json['trustedVcIssuer'],\n bdrsUrl: json['bdrsUrl'],\n dimUrl: json['dimUrl'],\n };\n}\n\nexport function DashboardCxDidConfigToJSON(json: any): DashboardCxDidConfig {\n return DashboardCxDidConfigToJSONTyped(json, false);\n}\n\nexport function DashboardCxDidConfigToJSONTyped(\n value?: DashboardCxDidConfig | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n myDid: value['myDid'],\n walletTokenUrl: value['walletTokenUrl'],\n trustedVcIssuer: value['trustedVcIssuer'],\n bdrsUrl: value['bdrsUrl'],\n dimUrl: value['dimUrl'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\n\n/**\n * DAPS Config\n * @export\n * @interface DashboardDapsConfig\n */\nexport interface DashboardDapsConfig {\n /**\n * Your Connector's DAPS Token URL\n * @type {string}\n * @memberof DashboardDapsConfig\n */\n tokenUrl: string;\n /**\n * Your Connector's DAPS JWKS URL\n * @type {string}\n * @memberof DashboardDapsConfig\n */\n jwksUrl: string;\n}\n\n/**\n * Check if a given object implements the DashboardDapsConfig interface.\n */\nexport function instanceOfDashboardDapsConfig(\n value: any,\n): value is DashboardDapsConfig {\n if (!('tokenUrl' in value) || value['tokenUrl'] === undefined) return false;\n if (!('jwksUrl' in value) || value['jwksUrl'] === undefined) return false;\n return true;\n}\n\nexport function DashboardDapsConfigFromJSON(json: any): DashboardDapsConfig {\n return DashboardDapsConfigFromJSONTyped(json, false);\n}\n\nexport function DashboardDapsConfigFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): DashboardDapsConfig {\n if (json == null) {\n return json;\n }\n return {\n tokenUrl: json['tokenUrl'],\n jwksUrl: json['jwksUrl'],\n };\n}\n\nexport function DashboardDapsConfigToJSON(json: any): DashboardDapsConfig {\n return DashboardDapsConfigToJSONTyped(json, false);\n}\n\nexport function DashboardDapsConfigToJSONTyped(\n value?: DashboardDapsConfig | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n tokenUrl: value['tokenUrl'],\n jwksUrl: value['jwksUrl'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\n\n/**\n * Number of Transfer Processes for given direction.\n * @export\n * @interface DashboardTransferAmounts\n */\nexport interface DashboardTransferAmounts {\n /**\n * Number of Transfer Processes\n * @type {number}\n * @memberof DashboardTransferAmounts\n */\n numTotal: number;\n /**\n * Number of running Transfer Processes\n * @type {number}\n * @memberof DashboardTransferAmounts\n */\n numRunning: number;\n /**\n * Number of successful Transfer Processes\n * @type {number}\n * @memberof DashboardTransferAmounts\n */\n numOk: number;\n /**\n * Number of failed Transfer Processes\n * @type {number}\n * @memberof DashboardTransferAmounts\n */\n numError: number;\n}\n\n/**\n * Check if a given object implements the DashboardTransferAmounts interface.\n */\nexport function instanceOfDashboardTransferAmounts(\n value: any,\n): value is DashboardTransferAmounts {\n if (!('numTotal' in value) || value['numTotal'] === undefined) return false;\n if (!('numRunning' in value) || value['numRunning'] === undefined)\n return false;\n if (!('numOk' in value) || value['numOk'] === undefined) return false;\n if (!('numError' in value) || value['numError'] === undefined) return false;\n return true;\n}\n\nexport function DashboardTransferAmountsFromJSON(\n json: any,\n): DashboardTransferAmounts {\n return DashboardTransferAmountsFromJSONTyped(json, false);\n}\n\nexport function DashboardTransferAmountsFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): DashboardTransferAmounts {\n if (json == null) {\n return json;\n }\n return {\n numTotal: json['numTotal'],\n numRunning: json['numRunning'],\n numOk: json['numOk'],\n numError: json['numError'],\n };\n}\n\nexport function DashboardTransferAmountsToJSON(\n json: any,\n): DashboardTransferAmounts {\n return DashboardTransferAmountsToJSONTyped(json, false);\n}\n\nexport function DashboardTransferAmountsToJSONTyped(\n value?: DashboardTransferAmounts | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n numTotal: value['numTotal'],\n numRunning: value['numRunning'],\n numOk: value['numOk'],\n numError: value['numError'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {DashboardCxDidConfig} from './DashboardCxDidConfig';\nimport {\n DashboardCxDidConfigFromJSON,\n DashboardCxDidConfigFromJSONTyped,\n DashboardCxDidConfigToJSON,\n DashboardCxDidConfigToJSONTyped,\n} from './DashboardCxDidConfig';\nimport type {DashboardDapsConfig} from './DashboardDapsConfig';\nimport {\n DashboardDapsConfigFromJSON,\n DashboardDapsConfigFromJSONTyped,\n DashboardDapsConfigToJSON,\n DashboardDapsConfigToJSONTyped,\n} from './DashboardDapsConfig';\nimport type {DashboardTransferAmounts} from './DashboardTransferAmounts';\nimport {\n DashboardTransferAmountsFromJSON,\n DashboardTransferAmountsFromJSONTyped,\n DashboardTransferAmountsToJSON,\n DashboardTransferAmountsToJSONTyped,\n} from './DashboardTransferAmounts';\n\n/**\n * Data as required by the UI's Dashboard Page\n * @export\n * @interface DashboardPage\n */\nexport interface DashboardPage {\n /**\n * Number of Assets\n * @type {number}\n * @memberof DashboardPage\n */\n numAssets: number;\n /**\n * Number of Policies\n * @type {number}\n * @memberof DashboardPage\n */\n numPolicies: number;\n /**\n * Number of Contract Definitions\n * @type {number}\n * @memberof DashboardPage\n */\n numContractDefinitions: number;\n /**\n * Number of consuming Contract Agreements\n * @type {number}\n * @memberof DashboardPage\n */\n numContractAgreementsConsuming: number;\n /**\n * Number of providing Contract Agreements\n * @type {number}\n * @memberof DashboardPage\n */\n numContractAgreementsProviding: number;\n /**\n * Consuming Transfer Process Amounts\n * @type {DashboardTransferAmounts}\n * @memberof DashboardPage\n */\n transferProcessesConsuming: DashboardTransferAmounts;\n /**\n * Providing Transfer Process Amounts\n * @type {DashboardTransferAmounts}\n * @memberof DashboardPage\n */\n transferProcessesProviding: DashboardTransferAmounts;\n /**\n * Your Connector's Management API URL for API Users\n * @type {string}\n * @memberof DashboardPage\n */\n managementApiUrlShownInDashboard: string;\n /**\n * Your Connector's Connector Endpoint\n * @type {string}\n * @memberof DashboardPage\n */\n connectorEndpoint: string;\n /**\n * Your Connector's Participant ID\n * @type {string}\n * @memberof DashboardPage\n */\n connectorParticipantId: string;\n /**\n * Your Connector's Title\n * @type {string}\n * @memberof DashboardPage\n */\n connectorTitle: string;\n /**\n * Your Connector's Description\n * @type {string}\n * @memberof DashboardPage\n */\n connectorDescription: string;\n /**\n * Your Organization Homepage\n * @type {string}\n * @memberof DashboardPage\n */\n connectorCuratorUrl: string;\n /**\n * Your Organization Name\n * @type {string}\n * @memberof DashboardPage\n */\n connectorCuratorName: string;\n /**\n * Your Connector's Maintainer's Organization Homepage\n * @type {string}\n * @memberof DashboardPage\n */\n connectorMaintainerUrl: string;\n /**\n * Your Connector's Maintainer's Organization Name\n * @type {string}\n * @memberof DashboardPage\n */\n connectorMaintainerName: string;\n /**\n * Your Connector's DAPS Configuration (if present)\n * @type {DashboardDapsConfig}\n * @memberof DashboardPage\n */\n connectorDapsConfig?: DashboardDapsConfig;\n /**\n * Your Connector's Catena-X or Sphin-X Web-DID Configuration (if present)\n * @type {DashboardCxDidConfig}\n * @memberof DashboardPage\n */\n connectorCxDidConfig?: DashboardCxDidConfig;\n}\n\n/**\n * Check if a given object implements the DashboardPage interface.\n */\nexport function instanceOfDashboardPage(value: any): value is DashboardPage {\n if (!('numAssets' in value) || value['numAssets'] === undefined)\n return false;\n if (!('numPolicies' in value) || value['numPolicies'] === undefined)\n return false;\n if (\n !('numContractDefinitions' in value) ||\n value['numContractDefinitions'] === undefined\n )\n return false;\n if (\n !('numContractAgreementsConsuming' in value) ||\n value['numContractAgreementsConsuming'] === undefined\n )\n return false;\n if (\n !('numContractAgreementsProviding' in value) ||\n value['numContractAgreementsProviding'] === undefined\n )\n return false;\n if (\n !('transferProcessesConsuming' in value) ||\n value['transferProcessesConsuming'] === undefined\n )\n return false;\n if (\n !('transferProcessesProviding' in value) ||\n value['transferProcessesProviding'] === undefined\n )\n return false;\n if (\n !('managementApiUrlShownInDashboard' in value) ||\n value['managementApiUrlShownInDashboard'] === undefined\n )\n return false;\n if (\n !('connectorEndpoint' in value) ||\n value['connectorEndpoint'] === undefined\n )\n return false;\n if (\n !('connectorParticipantId' in value) ||\n value['connectorParticipantId'] === undefined\n )\n return false;\n if (!('connectorTitle' in value) || value['connectorTitle'] === undefined)\n return false;\n if (\n !('connectorDescription' in value) ||\n value['connectorDescription'] === undefined\n )\n return false;\n if (\n !('connectorCuratorUrl' in value) ||\n value['connectorCuratorUrl'] === undefined\n )\n return false;\n if (\n !('connectorCuratorName' in value) ||\n value['connectorCuratorName'] === undefined\n )\n return false;\n if (\n !('connectorMaintainerUrl' in value) ||\n value['connectorMaintainerUrl'] === undefined\n )\n return false;\n if (\n !('connectorMaintainerName' in value) ||\n value['connectorMaintainerName'] === undefined\n )\n return false;\n return true;\n}\n\nexport function DashboardPageFromJSON(json: any): DashboardPage {\n return DashboardPageFromJSONTyped(json, false);\n}\n\nexport function DashboardPageFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): DashboardPage {\n if (json == null) {\n return json;\n }\n return {\n numAssets: json['numAssets'],\n numPolicies: json['numPolicies'],\n numContractDefinitions: json['numContractDefinitions'],\n numContractAgreementsConsuming: json['numContractAgreementsConsuming'],\n numContractAgreementsProviding: json['numContractAgreementsProviding'],\n transferProcessesConsuming: DashboardTransferAmountsFromJSON(\n json['transferProcessesConsuming'],\n ),\n transferProcessesProviding: DashboardTransferAmountsFromJSON(\n json['transferProcessesProviding'],\n ),\n managementApiUrlShownInDashboard:\n json['managementApiUrlShownInDashboard'],\n connectorEndpoint: json['connectorEndpoint'],\n connectorParticipantId: json['connectorParticipantId'],\n connectorTitle: json['connectorTitle'],\n connectorDescription: json['connectorDescription'],\n connectorCuratorUrl: json['connectorCuratorUrl'],\n connectorCuratorName: json['connectorCuratorName'],\n connectorMaintainerUrl: json['connectorMaintainerUrl'],\n connectorMaintainerName: json['connectorMaintainerName'],\n connectorDapsConfig:\n json['connectorDapsConfig'] == null\n ? undefined\n : DashboardDapsConfigFromJSON(json['connectorDapsConfig']),\n connectorCxDidConfig:\n json['connectorCxDidConfig'] == null\n ? undefined\n : DashboardCxDidConfigFromJSON(json['connectorCxDidConfig']),\n };\n}\n\nexport function DashboardPageToJSON(json: any): DashboardPage {\n return DashboardPageToJSONTyped(json, false);\n}\n\nexport function DashboardPageToJSONTyped(\n value?: DashboardPage | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n numAssets: value['numAssets'],\n numPolicies: value['numPolicies'],\n numContractDefinitions: value['numContractDefinitions'],\n numContractAgreementsConsuming: value['numContractAgreementsConsuming'],\n numContractAgreementsProviding: value['numContractAgreementsProviding'],\n transferProcessesConsuming: DashboardTransferAmountsToJSON(\n value['transferProcessesConsuming'],\n ),\n transferProcessesProviding: DashboardTransferAmountsToJSON(\n value['transferProcessesProviding'],\n ),\n managementApiUrlShownInDashboard:\n value['managementApiUrlShownInDashboard'],\n connectorEndpoint: value['connectorEndpoint'],\n connectorParticipantId: value['connectorParticipantId'],\n connectorTitle: value['connectorTitle'],\n connectorDescription: value['connectorDescription'],\n connectorCuratorUrl: value['connectorCuratorUrl'],\n connectorCuratorName: value['connectorCuratorName'],\n connectorMaintainerUrl: value['connectorMaintainerUrl'],\n connectorMaintainerName: value['connectorMaintainerName'],\n connectorDapsConfig: DashboardDapsConfigToJSON(\n value['connectorDapsConfig'],\n ),\n connectorCxDidConfig: DashboardCxDidConfigToJSON(\n value['connectorCxDidConfig'],\n ),\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n/* eslint-disable */\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n/**\n * Decides whether the data offer is to be published published:\n * * `DONT_PUBLISH` - Data offer is not published. Only an asset is created.\n * * `PUBLISH_UNRESTRICTED` - Creates the asset and publishes it using the always-true policy.\n * * `PUBLISH_RESTRICTED` - Creates the asset and publishes it with a newly created policy definition with the given policy expression\n *\n * @export\n */\nexport const DataOfferPublishType = {\n DontPublish: 'DONT_PUBLISH',\n PublishUnrestricted: 'PUBLISH_UNRESTRICTED',\n PublishRestricted: 'PUBLISH_RESTRICTED',\n} as const;\nexport type DataOfferPublishType =\n (typeof DataOfferPublishType)[keyof typeof DataOfferPublishType];\n\nexport function instanceOfDataOfferPublishType(value: any): boolean {\n for (const key in DataOfferPublishType) {\n if (Object.prototype.hasOwnProperty.call(DataOfferPublishType, key)) {\n if (\n DataOfferPublishType[\n key as keyof typeof DataOfferPublishType\n ] === value\n ) {\n return true;\n }\n }\n }\n return false;\n}\n\nexport function DataOfferPublishTypeFromJSON(json: any): DataOfferPublishType {\n return DataOfferPublishTypeFromJSONTyped(json, false);\n}\n\nexport function DataOfferPublishTypeFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): DataOfferPublishType {\n return json as DataOfferPublishType;\n}\n\nexport function DataOfferPublishTypeToJSON(\n value?: DataOfferPublishType | null,\n): any {\n return value as any;\n}\n\nexport function DataOfferPublishTypeToJSONTyped(\n value: any,\n ignoreDiscriminator: boolean,\n): DataOfferPublishType {\n return value as DataOfferPublishType;\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n/* eslint-disable */\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n/**\n * Supported Data Source Types by UiDataSource\n * @export\n */\nexport const DataSourceType = {\n HttpData: 'HTTP_DATA',\n OnRequest: 'ON_REQUEST',\n Custom: 'CUSTOM',\n} as const;\nexport type DataSourceType =\n (typeof DataSourceType)[keyof typeof DataSourceType];\n\nexport function instanceOfDataSourceType(value: any): boolean {\n for (const key in DataSourceType) {\n if (Object.prototype.hasOwnProperty.call(DataSourceType, key)) {\n if (DataSourceType[key as keyof typeof DataSourceType] === value) {\n return true;\n }\n }\n }\n return false;\n}\n\nexport function DataSourceTypeFromJSON(json: any): DataSourceType {\n return DataSourceTypeFromJSONTyped(json, false);\n}\n\nexport function DataSourceTypeFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): DataSourceType {\n return json as DataSourceType;\n}\n\nexport function DataSourceTypeToJSON(value?: DataSourceType | null): any {\n return value as any;\n}\n\nexport function DataSourceTypeToJSONTyped(\n value: any,\n ignoreDiscriminator: boolean,\n): DataSourceType {\n return value as DataSourceType;\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n/* eslint-disable */\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n/**\n * Supported HTTP Methods by UiDataSource\n * @export\n */\nexport const UiDataSourceHttpDataMethod = {\n Get: 'GET',\n Post: 'POST',\n Put: 'PUT',\n Patch: 'PATCH',\n Delete: 'DELETE',\n Options: 'OPTIONS',\n} as const;\nexport type UiDataSourceHttpDataMethod =\n (typeof UiDataSourceHttpDataMethod)[keyof typeof UiDataSourceHttpDataMethod];\n\nexport function instanceOfUiDataSourceHttpDataMethod(value: any): boolean {\n for (const key in UiDataSourceHttpDataMethod) {\n if (\n Object.prototype.hasOwnProperty.call(\n UiDataSourceHttpDataMethod,\n key,\n )\n ) {\n if (\n UiDataSourceHttpDataMethod[\n key as keyof typeof UiDataSourceHttpDataMethod\n ] === value\n ) {\n return true;\n }\n }\n }\n return false;\n}\n\nexport function UiDataSourceHttpDataMethodFromJSON(\n json: any,\n): UiDataSourceHttpDataMethod {\n return UiDataSourceHttpDataMethodFromJSONTyped(json, false);\n}\n\nexport function UiDataSourceHttpDataMethodFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): UiDataSourceHttpDataMethod {\n return json as UiDataSourceHttpDataMethod;\n}\n\nexport function UiDataSourceHttpDataMethodToJSON(\n value?: UiDataSourceHttpDataMethod | null,\n): any {\n return value as any;\n}\n\nexport function UiDataSourceHttpDataMethodToJSONTyped(\n value: any,\n ignoreDiscriminator: boolean,\n): UiDataSourceHttpDataMethod {\n return value as UiDataSourceHttpDataMethod;\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\n\n/**\n * Api Key parameters\n * @export\n * @interface UiHttpAuthApiKey\n */\nexport interface UiHttpAuthApiKey {\n /**\n * Auth Header name.\n * @type {string}\n * @memberof UiHttpAuthApiKey\n */\n headerName: string;\n /**\n * Auth Header key in the vault.\n * @type {string}\n * @memberof UiHttpAuthApiKey\n */\n vaultKey: string;\n}\n\n/**\n * Check if a given object implements the UiHttpAuthApiKey interface.\n */\nexport function instanceOfUiHttpAuthApiKey(\n value: any,\n): value is UiHttpAuthApiKey {\n if (!('headerName' in value) || value['headerName'] === undefined)\n return false;\n if (!('vaultKey' in value) || value['vaultKey'] === undefined) return false;\n return true;\n}\n\nexport function UiHttpAuthApiKeyFromJSON(json: any): UiHttpAuthApiKey {\n return UiHttpAuthApiKeyFromJSONTyped(json, false);\n}\n\nexport function UiHttpAuthApiKeyFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): UiHttpAuthApiKey {\n if (json == null) {\n return json;\n }\n return {\n headerName: json['headerName'],\n vaultKey: json['vaultKey'],\n };\n}\n\nexport function UiHttpAuthApiKeyToJSON(json: any): UiHttpAuthApiKey {\n return UiHttpAuthApiKeyToJSONTyped(json, false);\n}\n\nexport function UiHttpAuthApiKeyToJSONTyped(\n value?: UiHttpAuthApiKey | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n headerName: value['headerName'],\n vaultKey: value['vaultKey'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\n\n/**\n * Basic Auth as defined in RFC 7617. This is a wrapper for setting the header as Authorization: Basic Zm9vOnBhc3N3b3Jk. Using basic auth is not recommended in general for security reasons, but it is also not recommended because the secret will be saved in the database rather than the vault.\n * @export\n * @interface UiHttpAuthBasic\n */\nexport interface UiHttpAuthBasic {\n /**\n * The username\n * @type {string}\n * @memberof UiHttpAuthBasic\n */\n username: string;\n /**\n * The password\n * @type {string}\n * @memberof UiHttpAuthBasic\n */\n password: string;\n}\n\n/**\n * Check if a given object implements the UiHttpAuthBasic interface.\n */\nexport function instanceOfUiHttpAuthBasic(\n value: any,\n): value is UiHttpAuthBasic {\n if (!('username' in value) || value['username'] === undefined) return false;\n if (!('password' in value) || value['password'] === undefined) return false;\n return true;\n}\n\nexport function UiHttpAuthBasicFromJSON(json: any): UiHttpAuthBasic {\n return UiHttpAuthBasicFromJSONTyped(json, false);\n}\n\nexport function UiHttpAuthBasicFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): UiHttpAuthBasic {\n if (json == null) {\n return json;\n }\n return {\n username: json['username'],\n password: json['password'],\n };\n}\n\nexport function UiHttpAuthBasicToJSON(json: any): UiHttpAuthBasic {\n return UiHttpAuthBasicToJSONTyped(json, false);\n}\n\nexport function UiHttpAuthBasicToJSONTyped(\n value?: UiHttpAuthBasic | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n username: value['username'],\n password: value['password'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n/* eslint-disable */\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n/**\n * Types of OAuth2 flows supported\n * @export\n */\nexport const UiHttpOauth2AuthType = {\n SharedSecret: 'SHARED_SECRET',\n PrivateKey: 'PRIVATE_KEY',\n} as const;\nexport type UiHttpOauth2AuthType =\n (typeof UiHttpOauth2AuthType)[keyof typeof UiHttpOauth2AuthType];\n\nexport function instanceOfUiHttpOauth2AuthType(value: any): boolean {\n for (const key in UiHttpOauth2AuthType) {\n if (Object.prototype.hasOwnProperty.call(UiHttpOauth2AuthType, key)) {\n if (\n UiHttpOauth2AuthType[\n key as keyof typeof UiHttpOauth2AuthType\n ] === value\n ) {\n return true;\n }\n }\n }\n return false;\n}\n\nexport function UiHttpOauth2AuthTypeFromJSON(json: any): UiHttpOauth2AuthType {\n return UiHttpOauth2AuthTypeFromJSONTyped(json, false);\n}\n\nexport function UiHttpOauth2AuthTypeFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): UiHttpOauth2AuthType {\n return json as UiHttpOauth2AuthType;\n}\n\nexport function UiHttpOauth2AuthTypeToJSON(\n value?: UiHttpOauth2AuthType | null,\n): any {\n return value as any;\n}\n\nexport function UiHttpOauth2AuthTypeToJSONTyped(\n value: any,\n ignoreDiscriminator: boolean,\n): UiHttpOauth2AuthType {\n return value as UiHttpOauth2AuthType;\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\n\n/**\n * OAuth 2 authorization with a private key\n * @export\n * @interface UiHttpOauth2PrivateKeyAuthorization\n */\nexport interface UiHttpOauth2PrivateKeyAuthorization {\n /**\n * The vault entry name of the private key used to sign the JWT sent to the Oauth2 server.\n * @type {string}\n * @memberof UiHttpOauth2PrivateKeyAuthorization\n */\n privateKeyName: string;\n /**\n * The validity of the JWT token sent to the Oauth2 server (in seconds).\n * @type {number}\n * @memberof UiHttpOauth2PrivateKeyAuthorization\n */\n tokenValidityInSeconds: number;\n}\n\n/**\n * Check if a given object implements the UiHttpOauth2PrivateKeyAuthorization interface.\n */\nexport function instanceOfUiHttpOauth2PrivateKeyAuthorization(\n value: any,\n): value is UiHttpOauth2PrivateKeyAuthorization {\n if (!('privateKeyName' in value) || value['privateKeyName'] === undefined)\n return false;\n if (\n !('tokenValidityInSeconds' in value) ||\n value['tokenValidityInSeconds'] === undefined\n )\n return false;\n return true;\n}\n\nexport function UiHttpOauth2PrivateKeyAuthorizationFromJSON(\n json: any,\n): UiHttpOauth2PrivateKeyAuthorization {\n return UiHttpOauth2PrivateKeyAuthorizationFromJSONTyped(json, false);\n}\n\nexport function UiHttpOauth2PrivateKeyAuthorizationFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): UiHttpOauth2PrivateKeyAuthorization {\n if (json == null) {\n return json;\n }\n return {\n privateKeyName: json['privateKeyName'],\n tokenValidityInSeconds: json['tokenValidityInSeconds'],\n };\n}\n\nexport function UiHttpOauth2PrivateKeyAuthorizationToJSON(\n json: any,\n): UiHttpOauth2PrivateKeyAuthorization {\n return UiHttpOauth2PrivateKeyAuthorizationToJSONTyped(json, false);\n}\n\nexport function UiHttpOauth2PrivateKeyAuthorizationToJSONTyped(\n value?: UiHttpOauth2PrivateKeyAuthorization | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n privateKeyName: value['privateKeyName'],\n tokenValidityInSeconds: value['tokenValidityInSeconds'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\n\n/**\n * OAuth 2 shared secret authorization. This uses the OAuth2 client credentials flow.\n * @export\n * @interface UiHttpOauth2SharedSecretAuthorization\n */\nexport interface UiHttpOauth2SharedSecretAuthorization {\n /**\n * The client identifier.\n * @type {string}\n * @memberof UiHttpOauth2SharedSecretAuthorization\n */\n clientId: string;\n /**\n * The key with which the shared secret for authenticating to the Oauth2 server is stored into the Vault.\n * @type {string}\n * @memberof UiHttpOauth2SharedSecretAuthorization\n */\n clientSecretName: string;\n}\n\n/**\n * Check if a given object implements the UiHttpOauth2SharedSecretAuthorization interface.\n */\nexport function instanceOfUiHttpOauth2SharedSecretAuthorization(\n value: any,\n): value is UiHttpOauth2SharedSecretAuthorization {\n if (!('clientId' in value) || value['clientId'] === undefined) return false;\n if (\n !('clientSecretName' in value) ||\n value['clientSecretName'] === undefined\n )\n return false;\n return true;\n}\n\nexport function UiHttpOauth2SharedSecretAuthorizationFromJSON(\n json: any,\n): UiHttpOauth2SharedSecretAuthorization {\n return UiHttpOauth2SharedSecretAuthorizationFromJSONTyped(json, false);\n}\n\nexport function UiHttpOauth2SharedSecretAuthorizationFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): UiHttpOauth2SharedSecretAuthorization {\n if (json == null) {\n return json;\n }\n return {\n clientId: json['clientId'],\n clientSecretName: json['clientSecretName'],\n };\n}\n\nexport function UiHttpOauth2SharedSecretAuthorizationToJSON(\n json: any,\n): UiHttpOauth2SharedSecretAuthorization {\n return UiHttpOauth2SharedSecretAuthorizationToJSONTyped(json, false);\n}\n\nexport function UiHttpOauth2SharedSecretAuthorizationToJSONTyped(\n value?: UiHttpOauth2SharedSecretAuthorization | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n clientId: value['clientId'],\n clientSecretName: value['clientSecretName'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {UiHttpOauth2AuthType} from './UiHttpOauth2AuthType';\nimport {\n UiHttpOauth2AuthTypeFromJSON,\n UiHttpOauth2AuthTypeFromJSONTyped,\n UiHttpOauth2AuthTypeToJSON,\n UiHttpOauth2AuthTypeToJSONTyped,\n} from './UiHttpOauth2AuthType';\nimport type {UiHttpOauth2PrivateKeyAuthorization} from './UiHttpOauth2PrivateKeyAuthorization';\nimport {\n UiHttpOauth2PrivateKeyAuthorizationFromJSON,\n UiHttpOauth2PrivateKeyAuthorizationFromJSONTyped,\n UiHttpOauth2PrivateKeyAuthorizationToJSON,\n UiHttpOauth2PrivateKeyAuthorizationToJSONTyped,\n} from './UiHttpOauth2PrivateKeyAuthorization';\nimport type {UiHttpOauth2SharedSecretAuthorization} from './UiHttpOauth2SharedSecretAuthorization';\nimport {\n UiHttpOauth2SharedSecretAuthorizationFromJSON,\n UiHttpOauth2SharedSecretAuthorizationFromJSONTyped,\n UiHttpOauth2SharedSecretAuthorizationToJSON,\n UiHttpOauth2SharedSecretAuthorizationToJSONTyped,\n} from './UiHttpOauth2SharedSecretAuthorization';\n\n/**\n * OAuth 2 authentication information\n * @export\n * @interface UiHttpAuthOauth2\n */\nexport interface UiHttpAuthOauth2 {\n /**\n * The token URL where the access-token can be fetched from.\n * @type {string}\n * @memberof UiHttpAuthOauth2\n */\n tokenUrl: string;\n /**\n * (optional) The requested scope.\n * @type {string}\n * @memberof UiHttpAuthOauth2\n */\n scope?: string;\n /**\n * The type of credential.\n * @type {UiHttpOauth2AuthType}\n * @memberof UiHttpAuthOauth2\n */\n type: UiHttpOauth2AuthType;\n /**\n * Required if type=PRIVATE_KEY. For private key-based authorization.\n * @type {UiHttpOauth2PrivateKeyAuthorization}\n * @memberof UiHttpAuthOauth2\n */\n privateKey?: UiHttpOauth2PrivateKeyAuthorization;\n /**\n * Required if type=SHARED_SECRET. For shared secret-based authorization.\n * @type {UiHttpOauth2SharedSecretAuthorization}\n * @memberof UiHttpAuthOauth2\n */\n sharedSecret?: UiHttpOauth2SharedSecretAuthorization;\n}\n\n/**\n * Check if a given object implements the UiHttpAuthOauth2 interface.\n */\nexport function instanceOfUiHttpAuthOauth2(\n value: any,\n): value is UiHttpAuthOauth2 {\n if (!('tokenUrl' in value) || value['tokenUrl'] === undefined) return false;\n if (!('type' in value) || value['type'] === undefined) return false;\n return true;\n}\n\nexport function UiHttpAuthOauth2FromJSON(json: any): UiHttpAuthOauth2 {\n return UiHttpAuthOauth2FromJSONTyped(json, false);\n}\n\nexport function UiHttpAuthOauth2FromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): UiHttpAuthOauth2 {\n if (json == null) {\n return json;\n }\n return {\n tokenUrl: json['tokenUrl'],\n scope: json['scope'] == null ? undefined : json['scope'],\n type: UiHttpOauth2AuthTypeFromJSON(json['type']),\n privateKey:\n json['privateKey'] == null\n ? undefined\n : UiHttpOauth2PrivateKeyAuthorizationFromJSON(\n json['privateKey'],\n ),\n sharedSecret:\n json['sharedSecret'] == null\n ? undefined\n : UiHttpOauth2SharedSecretAuthorizationFromJSON(\n json['sharedSecret'],\n ),\n };\n}\n\nexport function UiHttpAuthOauth2ToJSON(json: any): UiHttpAuthOauth2 {\n return UiHttpAuthOauth2ToJSONTyped(json, false);\n}\n\nexport function UiHttpAuthOauth2ToJSONTyped(\n value?: UiHttpAuthOauth2 | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n tokenUrl: value['tokenUrl'],\n scope: value['scope'],\n type: UiHttpOauth2AuthTypeToJSON(value['type']),\n privateKey: UiHttpOauth2PrivateKeyAuthorizationToJSON(\n value['privateKey'],\n ),\n sharedSecret: UiHttpOauth2SharedSecretAuthorizationToJSON(\n value['sharedSecret'],\n ),\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n/* eslint-disable */\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n/**\n * Supported authentication types for HTTP Data Sinks\n * @export\n */\nexport const UiHttpAuthType = {\n Basic: 'BASIC',\n Oauth2: 'OAUTH2',\n ApiKey: 'API_KEY',\n} as const;\nexport type UiHttpAuthType =\n (typeof UiHttpAuthType)[keyof typeof UiHttpAuthType];\n\nexport function instanceOfUiHttpAuthType(value: any): boolean {\n for (const key in UiHttpAuthType) {\n if (Object.prototype.hasOwnProperty.call(UiHttpAuthType, key)) {\n if (UiHttpAuthType[key as keyof typeof UiHttpAuthType] === value) {\n return true;\n }\n }\n }\n return false;\n}\n\nexport function UiHttpAuthTypeFromJSON(json: any): UiHttpAuthType {\n return UiHttpAuthTypeFromJSONTyped(json, false);\n}\n\nexport function UiHttpAuthTypeFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): UiHttpAuthType {\n return json as UiHttpAuthType;\n}\n\nexport function UiHttpAuthTypeToJSON(value?: UiHttpAuthType | null): any {\n return value as any;\n}\n\nexport function UiHttpAuthTypeToJSONTyped(\n value: any,\n ignoreDiscriminator: boolean,\n): UiHttpAuthType {\n return value as UiHttpAuthType;\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {UiHttpAuthApiKey} from './UiHttpAuthApiKey';\nimport {\n UiHttpAuthApiKeyFromJSON,\n UiHttpAuthApiKeyFromJSONTyped,\n UiHttpAuthApiKeyToJSON,\n UiHttpAuthApiKeyToJSONTyped,\n} from './UiHttpAuthApiKey';\nimport type {UiHttpAuthBasic} from './UiHttpAuthBasic';\nimport {\n UiHttpAuthBasicFromJSON,\n UiHttpAuthBasicFromJSONTyped,\n UiHttpAuthBasicToJSON,\n UiHttpAuthBasicToJSONTyped,\n} from './UiHttpAuthBasic';\nimport type {UiHttpAuthOauth2} from './UiHttpAuthOauth2';\nimport {\n UiHttpAuthOauth2FromJSON,\n UiHttpAuthOauth2FromJSONTyped,\n UiHttpAuthOauth2ToJSON,\n UiHttpAuthOauth2ToJSONTyped,\n} from './UiHttpAuthOauth2';\nimport type {UiHttpAuthType} from './UiHttpAuthType';\nimport {\n UiHttpAuthTypeFromJSON,\n UiHttpAuthTypeFromJSONTyped,\n UiHttpAuthTypeToJSON,\n UiHttpAuthTypeToJSONTyped,\n} from './UiHttpAuthType';\n\n/**\n * Available authentication methods for http data sources. Use only one.\n * @export\n * @interface UiHttpAuth\n */\nexport interface UiHttpAuth {\n /**\n * The type of authentication.\n * @type {UiHttpAuthType}\n * @memberof UiHttpAuth\n */\n type: UiHttpAuthType;\n /**\n * Required when type=BASIC. To use basic authentication.\n * @type {UiHttpAuthBasic}\n * @memberof UiHttpAuth\n */\n basic?: UiHttpAuthBasic;\n /**\n * Required when type=API_KEY. To use api key authentication with a secret from the vault.\n * @type {UiHttpAuthApiKey}\n * @memberof UiHttpAuth\n */\n apiKey?: UiHttpAuthApiKey;\n /**\n * Required when type=OAUTH. To use oauth authentication.\n * @type {UiHttpAuthOauth2}\n * @memberof UiHttpAuth\n */\n oauth?: UiHttpAuthOauth2;\n}\n\n/**\n * Check if a given object implements the UiHttpAuth interface.\n */\nexport function instanceOfUiHttpAuth(value: any): value is UiHttpAuth {\n if (!('type' in value) || value['type'] === undefined) return false;\n return true;\n}\n\nexport function UiHttpAuthFromJSON(json: any): UiHttpAuth {\n return UiHttpAuthFromJSONTyped(json, false);\n}\n\nexport function UiHttpAuthFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): UiHttpAuth {\n if (json == null) {\n return json;\n }\n return {\n type: UiHttpAuthTypeFromJSON(json['type']),\n basic:\n json['basic'] == null\n ? undefined\n : UiHttpAuthBasicFromJSON(json['basic']),\n apiKey:\n json['apiKey'] == null\n ? undefined\n : UiHttpAuthApiKeyFromJSON(json['apiKey']),\n oauth:\n json['oauth'] == null\n ? undefined\n : UiHttpAuthOauth2FromJSON(json['oauth']),\n };\n}\n\nexport function UiHttpAuthToJSON(json: any): UiHttpAuth {\n return UiHttpAuthToJSONTyped(json, false);\n}\n\nexport function UiHttpAuthToJSONTyped(\n value?: UiHttpAuth | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n type: UiHttpAuthTypeToJSON(value['type']),\n basic: UiHttpAuthBasicToJSON(value['basic']),\n apiKey: UiHttpAuthApiKeyToJSON(value['apiKey']),\n oauth: UiHttpAuthOauth2ToJSON(value['oauth']),\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {UiDataSourceHttpDataMethod} from './UiDataSourceHttpDataMethod';\nimport {\n UiDataSourceHttpDataMethodFromJSON,\n UiDataSourceHttpDataMethodFromJSONTyped,\n UiDataSourceHttpDataMethodToJSON,\n UiDataSourceHttpDataMethodToJSONTyped,\n} from './UiDataSourceHttpDataMethod';\nimport type {UiHttpAuth} from './UiHttpAuth';\nimport {\n UiHttpAuthFromJSON,\n UiHttpAuthFromJSONTyped,\n UiHttpAuthToJSON,\n UiHttpAuthToJSONTyped,\n} from './UiHttpAuth';\n\n/**\n * HTTP_DATA type Data Source.\n * @export\n * @interface UiDataSourceHttpData\n */\nexport interface UiDataSourceHttpData {\n /**\n * HTTP Request Method\n * @type {UiDataSourceHttpDataMethod}\n * @memberof UiDataSourceHttpData\n */\n method?: UiDataSourceHttpDataMethod;\n /**\n * HTTP Request URL. If parameterized, additional pathParams will be joined onto existing one.\n * @type {string}\n * @memberof UiDataSourceHttpData\n */\n baseUrl: string;\n /**\n * HTTP Request Query Params / Query String.\n * @type {string}\n * @memberof UiDataSourceHttpData\n */\n queryString?: string;\n /**\n * The authentication method.\n * @type {UiHttpAuth}\n * @memberof UiDataSourceHttpData\n */\n auth?: UiHttpAuth;\n /**\n * HTTP Request Headers. HTTP Header Parameterization is not available.\n * @type {{ [key: string]: string; }}\n * @memberof UiDataSourceHttpData\n */\n headers?: {[key: string]: string};\n /**\n * Enable Method Parameterization. This forces consumers to provide a method, otherwise the transfer will fail.\n * @type {boolean}\n * @memberof UiDataSourceHttpData\n */\n enableMethodParameterization?: boolean;\n /**\n * Enable Path Parameterization.\n * @type {boolean}\n * @memberof UiDataSourceHttpData\n */\n enablePathParameterization?: boolean;\n /**\n * Enable Query Parameterization. Any additionally provided queryString will be merged with the existing one.\n * @type {boolean}\n * @memberof UiDataSourceHttpData\n */\n enableQueryParameterization?: boolean;\n /**\n * Enable Body Parameterization. Forces the provider to provide both a request body and a content type. Only Methods POST, PUT and PATCH allow request bodies.\n * @type {boolean}\n * @memberof UiDataSourceHttpData\n */\n enableBodyParameterization?: boolean;\n}\n\n/**\n * Check if a given object implements the UiDataSourceHttpData interface.\n */\nexport function instanceOfUiDataSourceHttpData(\n value: any,\n): value is UiDataSourceHttpData {\n if (!('baseUrl' in value) || value['baseUrl'] === undefined) return false;\n return true;\n}\n\nexport function UiDataSourceHttpDataFromJSON(json: any): UiDataSourceHttpData {\n return UiDataSourceHttpDataFromJSONTyped(json, false);\n}\n\nexport function UiDataSourceHttpDataFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): UiDataSourceHttpData {\n if (json == null) {\n return json;\n }\n return {\n method:\n json['method'] == null\n ? undefined\n : UiDataSourceHttpDataMethodFromJSON(json['method']),\n baseUrl: json['baseUrl'],\n queryString:\n json['queryString'] == null ? undefined : json['queryString'],\n auth:\n json['auth'] == null ? undefined : UiHttpAuthFromJSON(json['auth']),\n headers: json['headers'] == null ? undefined : json['headers'],\n enableMethodParameterization:\n json['enableMethodParameterization'] == null\n ? undefined\n : json['enableMethodParameterization'],\n enablePathParameterization:\n json['enablePathParameterization'] == null\n ? undefined\n : json['enablePathParameterization'],\n enableQueryParameterization:\n json['enableQueryParameterization'] == null\n ? undefined\n : json['enableQueryParameterization'],\n enableBodyParameterization:\n json['enableBodyParameterization'] == null\n ? undefined\n : json['enableBodyParameterization'],\n };\n}\n\nexport function UiDataSourceHttpDataToJSON(json: any): UiDataSourceHttpData {\n return UiDataSourceHttpDataToJSONTyped(json, false);\n}\n\nexport function UiDataSourceHttpDataToJSONTyped(\n value?: UiDataSourceHttpData | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n method: UiDataSourceHttpDataMethodToJSON(value['method']),\n baseUrl: value['baseUrl'],\n queryString: value['queryString'],\n auth: UiHttpAuthToJSON(value['auth']),\n headers: value['headers'],\n enableMethodParameterization: value['enableMethodParameterization'],\n enablePathParameterization: value['enablePathParameterization'],\n enableQueryParameterization: value['enableQueryParameterization'],\n enableBodyParameterization: value['enableBodyParameterization'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\n\n/**\n * ON_REQUEST type Data Source.\n * @export\n * @interface UiDataSourceOnRequest\n */\nexport interface UiDataSourceOnRequest {\n /**\n * Contact E-Mail address\n * @type {string}\n * @memberof UiDataSourceOnRequest\n */\n contactEmail: string;\n /**\n * Contact Preferred E-Mail Subject\n * @type {string}\n * @memberof UiDataSourceOnRequest\n */\n contactPreferredEmailSubject: string;\n}\n\n/**\n * Check if a given object implements the UiDataSourceOnRequest interface.\n */\nexport function instanceOfUiDataSourceOnRequest(\n value: any,\n): value is UiDataSourceOnRequest {\n if (!('contactEmail' in value) || value['contactEmail'] === undefined)\n return false;\n if (\n !('contactPreferredEmailSubject' in value) ||\n value['contactPreferredEmailSubject'] === undefined\n )\n return false;\n return true;\n}\n\nexport function UiDataSourceOnRequestFromJSON(\n json: any,\n): UiDataSourceOnRequest {\n return UiDataSourceOnRequestFromJSONTyped(json, false);\n}\n\nexport function UiDataSourceOnRequestFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): UiDataSourceOnRequest {\n if (json == null) {\n return json;\n }\n return {\n contactEmail: json['contactEmail'],\n contactPreferredEmailSubject: json['contactPreferredEmailSubject'],\n };\n}\n\nexport function UiDataSourceOnRequestToJSON(json: any): UiDataSourceOnRequest {\n return UiDataSourceOnRequestToJSONTyped(json, false);\n}\n\nexport function UiDataSourceOnRequestToJSONTyped(\n value?: UiDataSourceOnRequest | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n contactEmail: value['contactEmail'],\n contactPreferredEmailSubject: value['contactPreferredEmailSubject'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {DataSourceType} from './DataSourceType';\nimport {\n DataSourceTypeFromJSON,\n DataSourceTypeFromJSONTyped,\n DataSourceTypeToJSON,\n DataSourceTypeToJSONTyped,\n} from './DataSourceType';\nimport type {UiDataSourceHttpData} from './UiDataSourceHttpData';\nimport {\n UiDataSourceHttpDataFromJSON,\n UiDataSourceHttpDataFromJSONTyped,\n UiDataSourceHttpDataToJSON,\n UiDataSourceHttpDataToJSONTyped,\n} from './UiDataSourceHttpData';\nimport type {UiDataSourceOnRequest} from './UiDataSourceOnRequest';\nimport {\n UiDataSourceOnRequestFromJSON,\n UiDataSourceOnRequestFromJSONTyped,\n UiDataSourceOnRequestToJSON,\n UiDataSourceOnRequestToJSONTyped,\n} from './UiDataSourceOnRequest';\n\n/**\n * Type-safe data source as supported by the sovity product landscape. Contains extension points for using custom data address properties.\n * @export\n * @interface UiDataSource\n */\nexport interface UiDataSource {\n /**\n * Data Address Type.\n * @type {DataSourceType}\n * @memberof UiDataSource\n */\n type: DataSourceType;\n /**\n * Only for type HTTP_DATA\n * @type {UiDataSourceHttpData}\n * @memberof UiDataSource\n */\n httpData?: UiDataSourceHttpData;\n /**\n * Only for type ON_REQUEST\n * @type {UiDataSourceOnRequest}\n * @memberof UiDataSource\n */\n onRequest?: UiDataSourceOnRequest;\n /**\n * For all types. Custom Data Address Properties.\n * @type {{ [key: string]: string; }}\n * @memberof UiDataSource\n */\n customProperties?: {[key: string]: string};\n}\n\n/**\n * Check if a given object implements the UiDataSource interface.\n */\nexport function instanceOfUiDataSource(value: any): value is UiDataSource {\n if (!('type' in value) || value['type'] === undefined) return false;\n return true;\n}\n\nexport function UiDataSourceFromJSON(json: any): UiDataSource {\n return UiDataSourceFromJSONTyped(json, false);\n}\n\nexport function UiDataSourceFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): UiDataSource {\n if (json == null) {\n return json;\n }\n return {\n type: DataSourceTypeFromJSON(json['type']),\n httpData:\n json['httpData'] == null\n ? undefined\n : UiDataSourceHttpDataFromJSON(json['httpData']),\n onRequest:\n json['onRequest'] == null\n ? undefined\n : UiDataSourceOnRequestFromJSON(json['onRequest']),\n customProperties:\n json['customProperties'] == null\n ? undefined\n : json['customProperties'],\n };\n}\n\nexport function UiDataSourceToJSON(json: any): UiDataSource {\n return UiDataSourceToJSONTyped(json, false);\n}\n\nexport function UiDataSourceToJSONTyped(\n value?: UiDataSource | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n type: DataSourceTypeToJSON(value['type']),\n httpData: UiDataSourceHttpDataToJSON(value['httpData']),\n onRequest: UiDataSourceOnRequestToJSON(value['onRequest']),\n customProperties: value['customProperties'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {UiAssetExtForSphinx} from './UiAssetExtForSphinx';\nimport {\n UiAssetExtForSphinxFromJSON,\n UiAssetExtForSphinxFromJSONTyped,\n UiAssetExtForSphinxToJSON,\n UiAssetExtForSphinxToJSONTyped,\n} from './UiAssetExtForSphinx';\nimport type {UiDataSource} from './UiDataSource';\nimport {\n UiDataSourceFromJSON,\n UiDataSourceFromJSONTyped,\n UiDataSourceToJSON,\n UiDataSourceToJSONTyped,\n} from './UiDataSource';\n\n/**\n * Type-safe data offer metadata for creating an asset as supported by the sovity product landscape. Contains extension points.\n * @export\n * @interface UiAssetCreateRequest\n */\nexport interface UiAssetCreateRequest {\n /**\n * Data Source\n * @type {UiDataSource}\n * @memberof UiAssetCreateRequest\n */\n dataSource: UiDataSource;\n /**\n * Asset Id\n * @type {string}\n * @memberof UiAssetCreateRequest\n */\n id: string;\n /**\n * Asset Title\n * @type {string}\n * @memberof UiAssetCreateRequest\n */\n title?: string;\n /**\n * Asset Language\n * @type {string}\n * @memberof UiAssetCreateRequest\n */\n language?: string;\n /**\n * Asset Description\n * @type {string}\n * @memberof UiAssetCreateRequest\n */\n description?: string;\n /**\n * Asset Homepage\n * @type {string}\n * @memberof UiAssetCreateRequest\n */\n publisherHomepage?: string;\n /**\n * License URL\n * @type {string}\n * @memberof UiAssetCreateRequest\n */\n licenseUrl?: string;\n /**\n * Version\n * @type {string}\n * @memberof UiAssetCreateRequest\n */\n version?: string;\n /**\n * Asset Keywords\n * @type {Array<string>}\n * @memberof UiAssetCreateRequest\n */\n keywords?: Array<string>;\n /**\n * Asset MediaType\n * @type {string}\n * @memberof UiAssetCreateRequest\n */\n mediaType?: string;\n /**\n * Landing Page URL\n * @type {string}\n * @memberof UiAssetCreateRequest\n */\n landingPageUrl?: string;\n /**\n * Data Model\n * @type {string}\n * @memberof UiAssetCreateRequest\n */\n dataModel?: string;\n /**\n * The sovereign is distinct from the publisher by being the legal owner of the data.\n * @type {string}\n * @memberof UiAssetCreateRequest\n */\n sovereignLegalName?: string;\n /**\n * Data sample URLs\n * @type {Array<string>}\n * @memberof UiAssetCreateRequest\n */\n dataSampleUrls?: Array<string>;\n /**\n * Reference file/schema URLs\n * @type {Array<string>}\n * @memberof UiAssetCreateRequest\n */\n referenceFileUrls?: Array<string>;\n /**\n * Additional information on reference files/schemas\n * @type {string}\n * @memberof UiAssetCreateRequest\n */\n referenceFilesDescription?: string;\n /**\n * Instructions for use that are not legally relevant e.g. information on how to cite the dataset in papers\n * @type {string}\n * @memberof UiAssetCreateRequest\n */\n conditionsForUse?: string;\n /**\n * Data update frequency\n * @type {string}\n * @memberof UiAssetCreateRequest\n */\n dataUpdateFrequency?: string;\n /**\n * Temporal coverage start date\n * @type {Date}\n * @memberof UiAssetCreateRequest\n */\n temporalCoverageFrom?: Date;\n /**\n * Temporal coverage end date (inclusive)\n * @type {Date}\n * @memberof UiAssetCreateRequest\n */\n temporalCoverageToInclusive?: Date;\n /**\n * sphin-x dataspace specific asset metadata fields\n * @type {UiAssetExtForSphinx}\n * @memberof UiAssetCreateRequest\n */\n sphinxFields?: UiAssetExtForSphinx;\n /**\n * Contains serialized custom properties in the JSON format.\n * @type {string}\n * @memberof UiAssetCreateRequest\n */\n customJsonAsString?: string;\n /**\n * Contains serialized custom properties in the JSON LD format. Contrary to the customJsonAsString field, this string must represent a JSON LD object and will be affected by JSON LD compaction and expansion. Due to a technical limitation, the properties can't be booleans.\n * @type {string}\n * @memberof UiAssetCreateRequest\n */\n customJsonLdAsString?: string;\n /**\n * Same as customJsonAsString but the data will be stored in the private properties.\n * @type {string}\n * @memberof UiAssetCreateRequest\n */\n privateCustomJsonAsString?: string;\n /**\n * Same as customJsonLdAsString but the data will be stored in the private properties. The same limitations apply.\n * @type {string}\n * @memberof UiAssetCreateRequest\n */\n privateCustomJsonLdAsString?: string;\n}\n\n/**\n * Check if a given object implements the UiAssetCreateRequest interface.\n */\nexport function instanceOfUiAssetCreateRequest(\n value: any,\n): value is UiAssetCreateRequest {\n if (!('dataSource' in value) || value['dataSource'] === undefined)\n return false;\n if (!('id' in value) || value['id'] === undefined) return false;\n return true;\n}\n\nexport function UiAssetCreateRequestFromJSON(json: any): UiAssetCreateRequest {\n return UiAssetCreateRequestFromJSONTyped(json, false);\n}\n\nexport function UiAssetCreateRequestFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): UiAssetCreateRequest {\n if (json == null) {\n return json;\n }\n return {\n dataSource: UiDataSourceFromJSON(json['dataSource']),\n id: json['id'],\n title: json['title'] == null ? undefined : json['title'],\n language: json['language'] == null ? undefined : json['language'],\n description:\n json['description'] == null ? undefined : json['description'],\n publisherHomepage:\n json['publisherHomepage'] == null\n ? undefined\n : json['publisherHomepage'],\n licenseUrl: json['licenseUrl'] == null ? undefined : json['licenseUrl'],\n version: json['version'] == null ? undefined : json['version'],\n keywords: json['keywords'] == null ? undefined : json['keywords'],\n mediaType: json['mediaType'] == null ? undefined : json['mediaType'],\n landingPageUrl:\n json['landingPageUrl'] == null ? undefined : json['landingPageUrl'],\n dataModel: json['dataModel'] == null ? undefined : json['dataModel'],\n sovereignLegalName:\n json['sovereignLegalName'] == null\n ? undefined\n : json['sovereignLegalName'],\n dataSampleUrls:\n json['dataSampleUrls'] == null ? undefined : json['dataSampleUrls'],\n referenceFileUrls:\n json['referenceFileUrls'] == null\n ? undefined\n : json['referenceFileUrls'],\n referenceFilesDescription:\n json['referenceFilesDescription'] == null\n ? undefined\n : json['referenceFilesDescription'],\n conditionsForUse:\n json['conditionsForUse'] == null\n ? undefined\n : json['conditionsForUse'],\n dataUpdateFrequency:\n json['dataUpdateFrequency'] == null\n ? undefined\n : json['dataUpdateFrequency'],\n temporalCoverageFrom:\n json['temporalCoverageFrom'] == null\n ? undefined\n : new Date(json['temporalCoverageFrom']),\n temporalCoverageToInclusive:\n json['temporalCoverageToInclusive'] == null\n ? undefined\n : new Date(json['temporalCoverageToInclusive']),\n sphinxFields:\n json['sphinxFields'] == null\n ? undefined\n : UiAssetExtForSphinxFromJSON(json['sphinxFields']),\n customJsonAsString:\n json['customJsonAsString'] == null\n ? undefined\n : json['customJsonAsString'],\n customJsonLdAsString:\n json['customJsonLdAsString'] == null\n ? undefined\n : json['customJsonLdAsString'],\n privateCustomJsonAsString:\n json['privateCustomJsonAsString'] == null\n ? undefined\n : json['privateCustomJsonAsString'],\n privateCustomJsonLdAsString:\n json['privateCustomJsonLdAsString'] == null\n ? undefined\n : json['privateCustomJsonLdAsString'],\n };\n}\n\nexport function UiAssetCreateRequestToJSON(json: any): UiAssetCreateRequest {\n return UiAssetCreateRequestToJSONTyped(json, false);\n}\n\nexport function UiAssetCreateRequestToJSONTyped(\n value?: UiAssetCreateRequest | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n dataSource: UiDataSourceToJSON(value['dataSource']),\n id: value['id'],\n title: value['title'],\n language: value['language'],\n description: value['description'],\n publisherHomepage: value['publisherHomepage'],\n licenseUrl: value['licenseUrl'],\n version: value['version'],\n keywords: value['keywords'],\n mediaType: value['mediaType'],\n landingPageUrl: value['landingPageUrl'],\n dataModel: value['dataModel'],\n sovereignLegalName: value['sovereignLegalName'],\n dataSampleUrls: value['dataSampleUrls'],\n referenceFileUrls: value['referenceFileUrls'],\n referenceFilesDescription: value['referenceFilesDescription'],\n conditionsForUse: value['conditionsForUse'],\n dataUpdateFrequency: value['dataUpdateFrequency'],\n temporalCoverageFrom:\n value['temporalCoverageFrom'] == null\n ? undefined\n : value['temporalCoverageFrom'].toISOString().substring(0, 10),\n temporalCoverageToInclusive:\n value['temporalCoverageToInclusive'] == null\n ? undefined\n : value['temporalCoverageToInclusive']\n .toISOString()\n .substring(0, 10),\n sphinxFields: UiAssetExtForSphinxToJSON(value['sphinxFields']),\n customJsonAsString: value['customJsonAsString'],\n customJsonLdAsString: value['customJsonLdAsString'],\n privateCustomJsonAsString: value['privateCustomJsonAsString'],\n privateCustomJsonLdAsString: value['privateCustomJsonLdAsString'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {DataOfferPublishType} from './DataOfferPublishType';\nimport {\n DataOfferPublishTypeFromJSON,\n DataOfferPublishTypeFromJSONTyped,\n DataOfferPublishTypeToJSON,\n DataOfferPublishTypeToJSONTyped,\n} from './DataOfferPublishType';\nimport type {UiAssetCreateRequest} from './UiAssetCreateRequest';\nimport {\n UiAssetCreateRequestFromJSON,\n UiAssetCreateRequestFromJSONTyped,\n UiAssetCreateRequestToJSON,\n UiAssetCreateRequestToJSONTyped,\n} from './UiAssetCreateRequest';\nimport type {UiPolicyExpression} from './UiPolicyExpression';\nimport {\n UiPolicyExpressionFromJSON,\n UiPolicyExpressionFromJSONTyped,\n UiPolicyExpressionToJSON,\n UiPolicyExpressionToJSONTyped,\n} from './UiPolicyExpression';\n\n/**\n * Request to create a data offer\n * @export\n * @interface DataOfferCreateRequest\n */\nexport interface DataOfferCreateRequest {\n /**\n * The asset to create\n * @type {UiAssetCreateRequest}\n * @memberof DataOfferCreateRequest\n */\n asset: UiAssetCreateRequest;\n /**\n *\n * @type {DataOfferPublishType}\n * @memberof DataOfferCreateRequest\n */\n publishType: DataOfferPublishType;\n /**\n * Policy Expression. Only relevant if policyType is 'RESTRICTED'\n * @type {UiPolicyExpression}\n * @memberof DataOfferCreateRequest\n */\n policyExpression?: UiPolicyExpression;\n}\n\n/**\n * Check if a given object implements the DataOfferCreateRequest interface.\n */\nexport function instanceOfDataOfferCreateRequest(\n value: any,\n): value is DataOfferCreateRequest {\n if (!('asset' in value) || value['asset'] === undefined) return false;\n if (!('publishType' in value) || value['publishType'] === undefined)\n return false;\n return true;\n}\n\nexport function DataOfferCreateRequestFromJSON(\n json: any,\n): DataOfferCreateRequest {\n return DataOfferCreateRequestFromJSONTyped(json, false);\n}\n\nexport function DataOfferCreateRequestFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): DataOfferCreateRequest {\n if (json == null) {\n return json;\n }\n return {\n asset: UiAssetCreateRequestFromJSON(json['asset']),\n publishType: DataOfferPublishTypeFromJSON(json['publishType']),\n policyExpression:\n json['policyExpression'] == null\n ? undefined\n : UiPolicyExpressionFromJSON(json['policyExpression']),\n };\n}\n\nexport function DataOfferCreateRequestToJSON(\n json: any,\n): DataOfferCreateRequest {\n return DataOfferCreateRequestToJSONTyped(json, false);\n}\n\nexport function DataOfferCreateRequestToJSONTyped(\n value?: DataOfferCreateRequest | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n asset: UiAssetCreateRequestToJSON(value['asset']),\n publishType: DataOfferPublishTypeToJSON(value['publishType']),\n policyExpression: UiPolicyExpressionToJSON(value['policyExpression']),\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\n\n/**\n * Issued for a single transfer, calling the given endpoint allows you to directly interact with the data source. Depending on the asset you can pass data to the data source, provide query params or append a custom sub-path.\n * @export\n * @interface EdrDto\n */\nexport interface EdrDto {\n /**\n * Base URL\n * @type {string}\n * @memberof EdrDto\n */\n baseUrl: string;\n /**\n * Value for the 'Authorization' header.\n * @type {string}\n * @memberof EdrDto\n */\n authorizationHeaderValue: string;\n /**\n * Expiration date of the EDR token or null, if EDR never expires. After expiration you must re-fetch the EDR.\n * @type {Date}\n * @memberof EdrDto\n */\n expiresAt?: Date;\n}\n\n/**\n * Check if a given object implements the EdrDto interface.\n */\nexport function instanceOfEdrDto(value: any): value is EdrDto {\n if (!('baseUrl' in value) || value['baseUrl'] === undefined) return false;\n if (\n !('authorizationHeaderValue' in value) ||\n value['authorizationHeaderValue'] === undefined\n )\n return false;\n return true;\n}\n\nexport function EdrDtoFromJSON(json: any): EdrDto {\n return EdrDtoFromJSONTyped(json, false);\n}\n\nexport function EdrDtoFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): EdrDto {\n if (json == null) {\n return json;\n }\n return {\n baseUrl: json['baseUrl'],\n authorizationHeaderValue: json['authorizationHeaderValue'],\n expiresAt:\n json['expiresAt'] == null ? undefined : new Date(json['expiresAt']),\n };\n}\n\nexport function EdrDtoToJSON(json: any): EdrDto {\n return EdrDtoToJSONTyped(json, false);\n}\n\nexport function EdrDtoToJSONTyped(\n value?: EdrDto | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n baseUrl: value['baseUrl'],\n authorizationHeaderValue: value['authorizationHeaderValue'],\n expiresAt:\n value['expiresAt'] == null\n ? undefined\n : value['expiresAt'].toISOString(),\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\n\n/**\n * Object indicates whether an ID for the given object type is already taken or not\n * @export\n * @interface IdAvailabilityResponse\n */\nexport interface IdAvailabilityResponse {\n /**\n * ID\n * @type {string}\n * @memberof IdAvailabilityResponse\n */\n id: string;\n /**\n *\n * @type {boolean}\n * @memberof IdAvailabilityResponse\n */\n available?: boolean;\n}\n\n/**\n * Check if a given object implements the IdAvailabilityResponse interface.\n */\nexport function instanceOfIdAvailabilityResponse(\n value: any,\n): value is IdAvailabilityResponse {\n if (!('id' in value) || value['id'] === undefined) return false;\n return true;\n}\n\nexport function IdAvailabilityResponseFromJSON(\n json: any,\n): IdAvailabilityResponse {\n return IdAvailabilityResponseFromJSONTyped(json, false);\n}\n\nexport function IdAvailabilityResponseFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): IdAvailabilityResponse {\n if (json == null) {\n return json;\n }\n return {\n id: json['id'],\n available: json['available'] == null ? undefined : json['available'],\n };\n}\n\nexport function IdAvailabilityResponseToJSON(\n json: any,\n): IdAvailabilityResponse {\n return IdAvailabilityResponseToJSONTyped(json, false);\n}\n\nexport function IdAvailabilityResponseToJSONTyped(\n value?: IdAvailabilityResponse | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n id: value['id'],\n available: value['available'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\n\n/**\n * Marks the operation as successful\n * @export\n * @interface IdResponseDto\n */\nexport interface IdResponseDto {\n /**\n * ID\n * @type {string}\n * @memberof IdResponseDto\n */\n id: string;\n /**\n * Change Date\n * @type {Date}\n * @memberof IdResponseDto\n */\n lastUpdatedDate: Date;\n}\n\n/**\n * Check if a given object implements the IdResponseDto interface.\n */\nexport function instanceOfIdResponseDto(value: any): value is IdResponseDto {\n if (!('id' in value) || value['id'] === undefined) return false;\n if (!('lastUpdatedDate' in value) || value['lastUpdatedDate'] === undefined)\n return false;\n return true;\n}\n\nexport function IdResponseDtoFromJSON(json: any): IdResponseDto {\n return IdResponseDtoFromJSONTyped(json, false);\n}\n\nexport function IdResponseDtoFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): IdResponseDto {\n if (json == null) {\n return json;\n }\n return {\n id: json['id'],\n lastUpdatedDate: new Date(json['lastUpdatedDate']),\n };\n}\n\nexport function IdResponseDtoToJSON(json: any): IdResponseDto {\n return IdResponseDtoToJSONTyped(json, false);\n}\n\nexport function IdResponseDtoToJSONTyped(\n value?: IdResponseDto | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n id: value['id'],\n lastUpdatedDate: value['lastUpdatedDate'].toISOString(),\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\n\n/**\n * Required data for starting a Contract Agreement's Transfer Process\n * @export\n * @interface InitiateCustomTransferRequest\n */\nexport interface InitiateCustomTransferRequest {\n /**\n * Contract Agreement ID\n * @type {string}\n * @memberof InitiateCustomTransferRequest\n */\n contractAgreementId: string;\n /**\n * Partial TransferProcessRequestJsonLd JSON-LD. Fields participantId, connectorEndpoint, assetId and contractId can be omitted, they will be overridden with information from the contract.\n * @type {string}\n * @memberof InitiateCustomTransferRequest\n */\n transferProcessRequestJsonLd: string;\n}\n\n/**\n * Check if a given object implements the InitiateCustomTransferRequest interface.\n */\nexport function instanceOfInitiateCustomTransferRequest(\n value: any,\n): value is InitiateCustomTransferRequest {\n if (\n !('contractAgreementId' in value) ||\n value['contractAgreementId'] === undefined\n )\n return false;\n if (\n !('transferProcessRequestJsonLd' in value) ||\n value['transferProcessRequestJsonLd'] === undefined\n )\n return false;\n return true;\n}\n\nexport function InitiateCustomTransferRequestFromJSON(\n json: any,\n): InitiateCustomTransferRequest {\n return InitiateCustomTransferRequestFromJSONTyped(json, false);\n}\n\nexport function InitiateCustomTransferRequestFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): InitiateCustomTransferRequest {\n if (json == null) {\n return json;\n }\n return {\n contractAgreementId: json['contractAgreementId'],\n transferProcessRequestJsonLd: json['transferProcessRequestJsonLd'],\n };\n}\n\nexport function InitiateCustomTransferRequestToJSON(\n json: any,\n): InitiateCustomTransferRequest {\n return InitiateCustomTransferRequestToJSONTyped(json, false);\n}\n\nexport function InitiateCustomTransferRequestToJSONTyped(\n value?: InitiateCustomTransferRequest | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n contractAgreementId: value['contractAgreementId'],\n transferProcessRequestJsonLd: value['transferProcessRequestJsonLd'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\n\n/**\n * For type PARAMS_ONLY: Required data for starting a Transfer Process\n * @export\n * @interface InitiateTransferRequest\n */\nexport interface InitiateTransferRequest {\n /**\n * Contract Agreement ID\n * @type {string}\n * @memberof InitiateTransferRequest\n */\n contractAgreementId: string;\n /**\n * Transfer Type. Used to select a compatible DataPlane. Examples are 'HttpData-PUSH', 'HttpData-PULL'. Not to be confused with the 'type' of the data source, or the 'type' of the data sink found in the 'properties'\n * @type {string}\n * @memberof InitiateTransferRequest\n */\n transferType: string;\n /**\n * Data Sink / Data Address\n * @type {{ [key: string]: string; }}\n * @memberof InitiateTransferRequest\n */\n dataSinkProperties: {[key: string]: string};\n /**\n * Additional transfer process properties. These are not passed to the consumer EDC\n * @type {{ [key: string]: string; }}\n * @memberof InitiateTransferRequest\n */\n transferProcessProperties: {[key: string]: string};\n}\n\n/**\n * Check if a given object implements the InitiateTransferRequest interface.\n */\nexport function instanceOfInitiateTransferRequest(\n value: any,\n): value is InitiateTransferRequest {\n if (\n !('contractAgreementId' in value) ||\n value['contractAgreementId'] === undefined\n )\n return false;\n if (!('transferType' in value) || value['transferType'] === undefined)\n return false;\n if (\n !('dataSinkProperties' in value) ||\n value['dataSinkProperties'] === undefined\n )\n return false;\n if (\n !('transferProcessProperties' in value) ||\n value['transferProcessProperties'] === undefined\n )\n return false;\n return true;\n}\n\nexport function InitiateTransferRequestFromJSON(\n json: any,\n): InitiateTransferRequest {\n return InitiateTransferRequestFromJSONTyped(json, false);\n}\n\nexport function InitiateTransferRequestFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): InitiateTransferRequest {\n if (json == null) {\n return json;\n }\n return {\n contractAgreementId: json['contractAgreementId'],\n transferType: json['transferType'],\n dataSinkProperties: json['dataSinkProperties'],\n transferProcessProperties: json['transferProcessProperties'],\n };\n}\n\nexport function InitiateTransferRequestToJSON(\n json: any,\n): InitiateTransferRequest {\n return InitiateTransferRequestToJSONTyped(json, false);\n}\n\nexport function InitiateTransferRequestToJSONTyped(\n value?: InitiateTransferRequest | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n contractAgreementId: value['contractAgreementId'],\n transferType: value['transferType'],\n dataSinkProperties: value['dataSinkProperties'],\n transferProcessProperties: value['transferProcessProperties'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\n\n/**\n *\n * @export\n * @interface TransferProcessStatesDto\n */\nexport interface TransferProcessStatesDto {\n /**\n * States and count of incoming transferprocess counts\n * @type {{ [key: string]: number; }}\n * @memberof TransferProcessStatesDto\n */\n incomingTransferProcessCounts: {[key: string]: number};\n /**\n * States and counts of outgoing transferprocess counts\n * @type {{ [key: string]: number; }}\n * @memberof TransferProcessStatesDto\n */\n outgoingTransferProcessCounts: {[key: string]: number};\n}\n\n/**\n * Check if a given object implements the TransferProcessStatesDto interface.\n */\nexport function instanceOfTransferProcessStatesDto(\n value: any,\n): value is TransferProcessStatesDto {\n if (\n !('incomingTransferProcessCounts' in value) ||\n value['incomingTransferProcessCounts'] === undefined\n )\n return false;\n if (\n !('outgoingTransferProcessCounts' in value) ||\n value['outgoingTransferProcessCounts'] === undefined\n )\n return false;\n return true;\n}\n\nexport function TransferProcessStatesDtoFromJSON(\n json: any,\n): TransferProcessStatesDto {\n return TransferProcessStatesDtoFromJSONTyped(json, false);\n}\n\nexport function TransferProcessStatesDtoFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): TransferProcessStatesDto {\n if (json == null) {\n return json;\n }\n return {\n incomingTransferProcessCounts: json['incomingTransferProcessCounts'],\n outgoingTransferProcessCounts: json['outgoingTransferProcessCounts'],\n };\n}\n\nexport function TransferProcessStatesDtoToJSON(\n json: any,\n): TransferProcessStatesDto {\n return TransferProcessStatesDtoToJSONTyped(json, false);\n}\n\nexport function TransferProcessStatesDtoToJSONTyped(\n value?: TransferProcessStatesDto | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n incomingTransferProcessCounts: value['incomingTransferProcessCounts'],\n outgoingTransferProcessCounts: value['outgoingTransferProcessCounts'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {TransferProcessStatesDto} from './TransferProcessStatesDto';\nimport {\n TransferProcessStatesDtoFromJSON,\n TransferProcessStatesDtoFromJSONTyped,\n TransferProcessStatesDtoToJSON,\n TransferProcessStatesDtoToJSONTyped,\n} from './TransferProcessStatesDto';\n\n/**\n * EDC-status-defining KPIs\n * @export\n * @interface KpiResult\n */\nexport interface KpiResult {\n /**\n * Counts of assets\n * @type {number}\n * @memberof KpiResult\n */\n assetsCount: number;\n /**\n * Counts of policies\n * @type {number}\n * @memberof KpiResult\n */\n policiesCount: number;\n /**\n * Counts of contract definitions\n * @type {number}\n * @memberof KpiResult\n */\n contractDefinitionsCount: number;\n /**\n * Counts of contract agreements\n * @type {number}\n * @memberof KpiResult\n */\n contractAgreementsCount: number;\n /**\n * Counts of incoming and outgoing TransferProcesses and status\n * @type {TransferProcessStatesDto}\n * @memberof KpiResult\n */\n transferProcessDto: TransferProcessStatesDto;\n}\n\n/**\n * Check if a given object implements the KpiResult interface.\n */\nexport function instanceOfKpiResult(value: any): value is KpiResult {\n if (!('assetsCount' in value) || value['assetsCount'] === undefined)\n return false;\n if (!('policiesCount' in value) || value['policiesCount'] === undefined)\n return false;\n if (\n !('contractDefinitionsCount' in value) ||\n value['contractDefinitionsCount'] === undefined\n )\n return false;\n if (\n !('contractAgreementsCount' in value) ||\n value['contractAgreementsCount'] === undefined\n )\n return false;\n if (\n !('transferProcessDto' in value) ||\n value['transferProcessDto'] === undefined\n )\n return false;\n return true;\n}\n\nexport function KpiResultFromJSON(json: any): KpiResult {\n return KpiResultFromJSONTyped(json, false);\n}\n\nexport function KpiResultFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): KpiResult {\n if (json == null) {\n return json;\n }\n return {\n assetsCount: json['assetsCount'],\n policiesCount: json['policiesCount'],\n contractDefinitionsCount: json['contractDefinitionsCount'],\n contractAgreementsCount: json['contractAgreementsCount'],\n transferProcessDto: TransferProcessStatesDtoFromJSON(\n json['transferProcessDto'],\n ),\n };\n}\n\nexport function KpiResultToJSON(json: any): KpiResult {\n return KpiResultToJSONTyped(json, false);\n}\n\nexport function KpiResultToJSONTyped(\n value?: KpiResult | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n assetsCount: value['assetsCount'],\n policiesCount: value['policiesCount'],\n contractDefinitionsCount: value['contractDefinitionsCount'],\n contractAgreementsCount: value['contractAgreementsCount'],\n transferProcessDto: TransferProcessStatesDtoToJSON(\n value['transferProcessDto'],\n ),\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {AssetFilterConstraint} from './AssetFilterConstraint';\nimport {\n AssetFilterConstraintFromJSON,\n AssetFilterConstraintFromJSONTyped,\n AssetFilterConstraintToJSON,\n AssetFilterConstraintToJSONTyped,\n} from './AssetFilterConstraint';\nimport type {CallbackAddressDto} from './CallbackAddressDto';\nimport {\n CallbackAddressDtoFromJSON,\n CallbackAddressDtoFromJSONTyped,\n CallbackAddressDtoToJSON,\n CallbackAddressDtoToJSONTyped,\n} from './CallbackAddressDto';\n\n/**\n * Negotiates all given assets by the given filter\n * @export\n * @interface NegotiateAllQuery\n */\nexport interface NegotiateAllQuery {\n /**\n * Target EDC DSP endpoint URL\n * @type {string}\n * @memberof NegotiateAllQuery\n */\n connectorEndpoint: string;\n /**\n * Target EDC Participant ID\n * @type {string}\n * @memberof NegotiateAllQuery\n */\n participantId: string;\n /**\n * Data offers to negotiate. Filter expressions, joined by AND. If left empty, all data offers are negotiated\n * @type {Array<AssetFilterConstraint>}\n * @memberof NegotiateAllQuery\n */\n filter: Array<AssetFilterConstraint>;\n /**\n * Optional limit to limit the number of assets negotiated to\n * @type {number}\n * @memberof NegotiateAllQuery\n */\n limit?: number;\n /**\n * Optionally listen to negotiation success / failure for new negotiations\n * @type {Array<CallbackAddressDto>}\n * @memberof NegotiateAllQuery\n */\n callbackAddresses?: Array<CallbackAddressDto>;\n}\n\n/**\n * Check if a given object implements the NegotiateAllQuery interface.\n */\nexport function instanceOfNegotiateAllQuery(\n value: any,\n): value is NegotiateAllQuery {\n if (\n !('connectorEndpoint' in value) ||\n value['connectorEndpoint'] === undefined\n )\n return false;\n if (!('participantId' in value) || value['participantId'] === undefined)\n return false;\n if (!('filter' in value) || value['filter'] === undefined) return false;\n return true;\n}\n\nexport function NegotiateAllQueryFromJSON(json: any): NegotiateAllQuery {\n return NegotiateAllQueryFromJSONTyped(json, false);\n}\n\nexport function NegotiateAllQueryFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): NegotiateAllQuery {\n if (json == null) {\n return json;\n }\n return {\n connectorEndpoint: json['connectorEndpoint'],\n participantId: json['participantId'],\n filter: (json['filter'] as Array<any>).map(\n AssetFilterConstraintFromJSON,\n ),\n limit: json['limit'] == null ? undefined : json['limit'],\n callbackAddresses:\n json['callbackAddresses'] == null\n ? undefined\n : (json['callbackAddresses'] as Array<any>).map(\n CallbackAddressDtoFromJSON,\n ),\n };\n}\n\nexport function NegotiateAllQueryToJSON(json: any): NegotiateAllQuery {\n return NegotiateAllQueryToJSONTyped(json, false);\n}\n\nexport function NegotiateAllQueryToJSONTyped(\n value?: NegotiateAllQuery | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n connectorEndpoint: value['connectorEndpoint'],\n participantId: value['participantId'],\n filter: (value['filter'] as Array<any>).map(\n AssetFilterConstraintToJSON,\n ),\n limit: value['limit'],\n callbackAddresses:\n value['callbackAddresses'] == null\n ? undefined\n : (value['callbackAddresses'] as Array<any>).map(\n CallbackAddressDtoToJSON,\n ),\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {ContractNegotiationState} from './ContractNegotiationState';\nimport {\n ContractNegotiationStateFromJSON,\n ContractNegotiationStateFromJSONTyped,\n ContractNegotiationStateToJSON,\n ContractNegotiationStateToJSONTyped,\n} from './ContractNegotiationState';\nimport type {UiAsset} from './UiAsset';\nimport {\n UiAssetFromJSON,\n UiAssetFromJSONTyped,\n UiAssetToJSON,\n UiAssetToJSONTyped,\n} from './UiAsset';\nimport type {UiPolicy} from './UiPolicy';\nimport {\n UiPolicyFromJSON,\n UiPolicyFromJSONTyped,\n UiPolicyToJSON,\n UiPolicyToJSONTyped,\n} from './UiPolicy';\n\n/**\n * Negotiations that either already exist or were started\n * @export\n * @interface NegotiateAllResult\n */\nexport interface NegotiateAllResult {\n /**\n * Negotiation ID (either existing or new if no active contract was found)\n * @type {string}\n * @memberof NegotiateAllResult\n */\n contractNegotiationId: string;\n /**\n * Contract Agreement ID (will only be ever present if an active old negotiation was found)\n * @type {string}\n * @memberof NegotiateAllResult\n */\n contractAgreementId?: string;\n /**\n * Contract Negotiation State\n * @type {ContractNegotiationState}\n * @memberof NegotiateAllResult\n */\n state: ContractNegotiationState;\n /**\n * Contract Negotiation State Last Change\n * @type {Date}\n * @memberof NegotiateAllResult\n */\n stateChangedAt: Date;\n /**\n * Asset that was negotiated. Will not contain asset metadata for already negotiated offers\n * @type {UiAsset}\n * @memberof NegotiateAllResult\n */\n asset: UiAsset;\n /**\n * Contract Offer that was negotiated. Will not contain asset metadata for already negotiated offers\n * @type {UiPolicy}\n * @memberof NegotiateAllResult\n */\n policy: UiPolicy;\n}\n\n/**\n * Check if a given object implements the NegotiateAllResult interface.\n */\nexport function instanceOfNegotiateAllResult(\n value: any,\n): value is NegotiateAllResult {\n if (\n !('contractNegotiationId' in value) ||\n value['contractNegotiationId'] === undefined\n )\n return false;\n if (!('state' in value) || value['state'] === undefined) return false;\n if (!('stateChangedAt' in value) || value['stateChangedAt'] === undefined)\n return false;\n if (!('asset' in value) || value['asset'] === undefined) return false;\n if (!('policy' in value) || value['policy'] === undefined) return false;\n return true;\n}\n\nexport function NegotiateAllResultFromJSON(json: any): NegotiateAllResult {\n return NegotiateAllResultFromJSONTyped(json, false);\n}\n\nexport function NegotiateAllResultFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): NegotiateAllResult {\n if (json == null) {\n return json;\n }\n return {\n contractNegotiationId: json['contractNegotiationId'],\n contractAgreementId:\n json['contractAgreementId'] == null\n ? undefined\n : json['contractAgreementId'],\n state: ContractNegotiationStateFromJSON(json['state']),\n stateChangedAt: new Date(json['stateChangedAt']),\n asset: UiAssetFromJSON(json['asset']),\n policy: UiPolicyFromJSON(json['policy']),\n };\n}\n\nexport function NegotiateAllResultToJSON(json: any): NegotiateAllResult {\n return NegotiateAllResultToJSONTyped(json, false);\n}\n\nexport function NegotiateAllResultToJSONTyped(\n value?: NegotiateAllResult | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n contractNegotiationId: value['contractNegotiationId'],\n contractAgreementId: value['contractAgreementId'],\n state: ContractNegotiationStateToJSON(value['state']),\n stateChangedAt: value['stateChangedAt'].toISOString(),\n asset: UiAssetToJSON(value['asset']),\n policy: UiPolicyToJSON(value['policy']),\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {UiPolicyExpression} from './UiPolicyExpression';\nimport {\n UiPolicyExpressionFromJSON,\n UiPolicyExpressionFromJSONTyped,\n UiPolicyExpressionToJSON,\n UiPolicyExpressionToJSONTyped,\n} from './UiPolicyExpression';\n\n/**\n * Create a Policy Definition\n * @export\n * @interface PolicyDefinitionCreateDto\n */\nexport interface PolicyDefinitionCreateDto {\n /**\n * Policy Definition ID\n * @type {string}\n * @memberof PolicyDefinitionCreateDto\n */\n policyDefinitionId: string;\n /**\n * Policy Expression\n * @type {UiPolicyExpression}\n * @memberof PolicyDefinitionCreateDto\n */\n expression: UiPolicyExpression;\n}\n\n/**\n * Check if a given object implements the PolicyDefinitionCreateDto interface.\n */\nexport function instanceOfPolicyDefinitionCreateDto(\n value: any,\n): value is PolicyDefinitionCreateDto {\n if (\n !('policyDefinitionId' in value) ||\n value['policyDefinitionId'] === undefined\n )\n return false;\n if (!('expression' in value) || value['expression'] === undefined)\n return false;\n return true;\n}\n\nexport function PolicyDefinitionCreateDtoFromJSON(\n json: any,\n): PolicyDefinitionCreateDto {\n return PolicyDefinitionCreateDtoFromJSONTyped(json, false);\n}\n\nexport function PolicyDefinitionCreateDtoFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): PolicyDefinitionCreateDto {\n if (json == null) {\n return json;\n }\n return {\n policyDefinitionId: json['policyDefinitionId'],\n expression: UiPolicyExpressionFromJSON(json['expression']),\n };\n}\n\nexport function PolicyDefinitionCreateDtoToJSON(\n json: any,\n): PolicyDefinitionCreateDto {\n return PolicyDefinitionCreateDtoToJSONTyped(json, false);\n}\n\nexport function PolicyDefinitionCreateDtoToJSONTyped(\n value?: PolicyDefinitionCreateDto | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n policyDefinitionId: value['policyDefinitionId'],\n expression: UiPolicyExpressionToJSON(value['expression']),\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {UiPolicyConstraint} from './UiPolicyConstraint';\nimport {\n UiPolicyConstraintFromJSON,\n UiPolicyConstraintFromJSONTyped,\n UiPolicyConstraintToJSON,\n UiPolicyConstraintToJSONTyped,\n} from './UiPolicyConstraint';\n\n/**\n * [Deprecated] Conjunction of constraints (simplified UiPolicyExpression)\n * @export\n * @interface UiPolicyCreateRequest\n */\nexport interface UiPolicyCreateRequest {\n /**\n * Conjunction of required constraints\n * @type {Array<UiPolicyConstraint>}\n * @memberof UiPolicyCreateRequest\n */\n constraints?: Array<UiPolicyConstraint>;\n}\n\n/**\n * Check if a given object implements the UiPolicyCreateRequest interface.\n */\nexport function instanceOfUiPolicyCreateRequest(\n value: any,\n): value is UiPolicyCreateRequest {\n return true;\n}\n\nexport function UiPolicyCreateRequestFromJSON(\n json: any,\n): UiPolicyCreateRequest {\n return UiPolicyCreateRequestFromJSONTyped(json, false);\n}\n\nexport function UiPolicyCreateRequestFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): UiPolicyCreateRequest {\n if (json == null) {\n return json;\n }\n return {\n constraints:\n json['constraints'] == null\n ? undefined\n : (json['constraints'] as Array<any>).map(\n UiPolicyConstraintFromJSON,\n ),\n };\n}\n\nexport function UiPolicyCreateRequestToJSON(json: any): UiPolicyCreateRequest {\n return UiPolicyCreateRequestToJSONTyped(json, false);\n}\n\nexport function UiPolicyCreateRequestToJSONTyped(\n value?: UiPolicyCreateRequest | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n constraints:\n value['constraints'] == null\n ? undefined\n : (value['constraints'] as Array<any>).map(\n UiPolicyConstraintToJSON,\n ),\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {UiPolicyCreateRequest} from './UiPolicyCreateRequest';\nimport {\n UiPolicyCreateRequestFromJSON,\n UiPolicyCreateRequestFromJSONTyped,\n UiPolicyCreateRequestToJSON,\n UiPolicyCreateRequestToJSONTyped,\n} from './UiPolicyCreateRequest';\n\n/**\n * [Deprecated] Create a Policy Definition. Use PolicyDefinitionCreateDto\n * @export\n * @interface PolicyDefinitionCreateRequest\n */\nexport interface PolicyDefinitionCreateRequest {\n /**\n * Policy Definition ID\n * @type {string}\n * @memberof PolicyDefinitionCreateRequest\n */\n policyDefinitionId: string;\n /**\n * [Deprecated] Conjunction of constraints (simplified UiPolicyExpression)\n * @type {UiPolicyCreateRequest}\n * @memberof PolicyDefinitionCreateRequest\n * @deprecated\n */\n policy: UiPolicyCreateRequest;\n}\n\n/**\n * Check if a given object implements the PolicyDefinitionCreateRequest interface.\n */\nexport function instanceOfPolicyDefinitionCreateRequest(\n value: any,\n): value is PolicyDefinitionCreateRequest {\n if (\n !('policyDefinitionId' in value) ||\n value['policyDefinitionId'] === undefined\n )\n return false;\n if (!('policy' in value) || value['policy'] === undefined) return false;\n return true;\n}\n\nexport function PolicyDefinitionCreateRequestFromJSON(\n json: any,\n): PolicyDefinitionCreateRequest {\n return PolicyDefinitionCreateRequestFromJSONTyped(json, false);\n}\n\nexport function PolicyDefinitionCreateRequestFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): PolicyDefinitionCreateRequest {\n if (json == null) {\n return json;\n }\n return {\n policyDefinitionId: json['policyDefinitionId'],\n policy: UiPolicyCreateRequestFromJSON(json['policy']),\n };\n}\n\nexport function PolicyDefinitionCreateRequestToJSON(\n json: any,\n): PolicyDefinitionCreateRequest {\n return PolicyDefinitionCreateRequestToJSONTyped(json, false);\n}\n\nexport function PolicyDefinitionCreateRequestToJSONTyped(\n value?: PolicyDefinitionCreateRequest | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n policyDefinitionId: value['policyDefinitionId'],\n policy: UiPolicyCreateRequestToJSON(value['policy']),\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {UiPolicy} from './UiPolicy';\nimport {\n UiPolicyFromJSON,\n UiPolicyFromJSONTyped,\n UiPolicyToJSON,\n UiPolicyToJSONTyped,\n} from './UiPolicy';\n\n/**\n * Policy Definition as required for the Policy Definition Page\n * @export\n * @interface PolicyDefinitionDto\n */\nexport interface PolicyDefinitionDto {\n /**\n * Policy Definition ID\n * @type {string}\n * @memberof PolicyDefinitionDto\n */\n policyDefinitionId: string;\n /**\n * Policy Contents\n * @type {UiPolicy}\n * @memberof PolicyDefinitionDto\n */\n policy: UiPolicy;\n}\n\n/**\n * Check if a given object implements the PolicyDefinitionDto interface.\n */\nexport function instanceOfPolicyDefinitionDto(\n value: any,\n): value is PolicyDefinitionDto {\n if (\n !('policyDefinitionId' in value) ||\n value['policyDefinitionId'] === undefined\n )\n return false;\n if (!('policy' in value) || value['policy'] === undefined) return false;\n return true;\n}\n\nexport function PolicyDefinitionDtoFromJSON(json: any): PolicyDefinitionDto {\n return PolicyDefinitionDtoFromJSONTyped(json, false);\n}\n\nexport function PolicyDefinitionDtoFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): PolicyDefinitionDto {\n if (json == null) {\n return json;\n }\n return {\n policyDefinitionId: json['policyDefinitionId'],\n policy: UiPolicyFromJSON(json['policy']),\n };\n}\n\nexport function PolicyDefinitionDtoToJSON(json: any): PolicyDefinitionDto {\n return PolicyDefinitionDtoToJSONTyped(json, false);\n}\n\nexport function PolicyDefinitionDtoToJSONTyped(\n value?: PolicyDefinitionDto | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n policyDefinitionId: value['policyDefinitionId'],\n policy: UiPolicyToJSON(value['policy']),\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {PolicyDefinitionDto} from './PolicyDefinitionDto';\nimport {\n PolicyDefinitionDtoFromJSON,\n PolicyDefinitionDtoFromJSONTyped,\n PolicyDefinitionDtoToJSON,\n PolicyDefinitionDtoToJSONTyped,\n} from './PolicyDefinitionDto';\n\n/**\n * All data for the policy definition page as required by the UI\n * @export\n * @interface PolicyDefinitionPage\n */\nexport interface PolicyDefinitionPage {\n /**\n * Policy Definition Entries\n * @type {Array<PolicyDefinitionDto>}\n * @memberof PolicyDefinitionPage\n */\n policies: Array<PolicyDefinitionDto>;\n}\n\n/**\n * Check if a given object implements the PolicyDefinitionPage interface.\n */\nexport function instanceOfPolicyDefinitionPage(\n value: any,\n): value is PolicyDefinitionPage {\n if (!('policies' in value) || value['policies'] === undefined) return false;\n return true;\n}\n\nexport function PolicyDefinitionPageFromJSON(json: any): PolicyDefinitionPage {\n return PolicyDefinitionPageFromJSONTyped(json, false);\n}\n\nexport function PolicyDefinitionPageFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): PolicyDefinitionPage {\n if (json == null) {\n return json;\n }\n return {\n policies: (json['policies'] as Array<any>).map(\n PolicyDefinitionDtoFromJSON,\n ),\n };\n}\n\nexport function PolicyDefinitionPageToJSON(json: any): PolicyDefinitionPage {\n return PolicyDefinitionPageToJSONTyped(json, false);\n}\n\nexport function PolicyDefinitionPageToJSONTyped(\n value?: PolicyDefinitionPage | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n policies: (value['policies'] as Array<any>).map(\n PolicyDefinitionDtoToJSON,\n ),\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {ContractAgreementDirection} from './ContractAgreementDirection';\nimport {\n ContractAgreementDirectionFromJSON,\n ContractAgreementDirectionFromJSONTyped,\n ContractAgreementDirectionToJSON,\n ContractAgreementDirectionToJSONTyped,\n} from './ContractAgreementDirection';\nimport type {TransferProcessState} from './TransferProcessState';\nimport {\n TransferProcessStateFromJSON,\n TransferProcessStateFromJSONTyped,\n TransferProcessStateToJSON,\n TransferProcessStateToJSONTyped,\n} from './TransferProcessState';\n\n/**\n * Transfer History Entry for Transfer History Page\n * @export\n * @interface TransferHistoryEntry\n */\nexport interface TransferHistoryEntry {\n /**\n * Transfer Process ID\n * @type {string}\n * @memberof TransferHistoryEntry\n */\n transferProcessId: string;\n /**\n * Created Date\n * @type {Date}\n * @memberof TransferHistoryEntry\n */\n createdDate: Date;\n /**\n * Last Change Date\n * @type {Date}\n * @memberof TransferHistoryEntry\n */\n lastUpdatedDate: Date;\n /**\n * Transfer Type\n * @type {string}\n * @memberof TransferHistoryEntry\n */\n transferType: string;\n /**\n * Transfer History State\n * @type {TransferProcessState}\n * @memberof TransferHistoryEntry\n */\n state: TransferProcessState;\n /**\n * Contract Agreement ID\n * @type {string}\n * @memberof TransferHistoryEntry\n */\n contractAgreementId: string;\n /**\n * Incoming vs Outgoing\n * @type {ContractAgreementDirection}\n * @memberof TransferHistoryEntry\n */\n direction: ContractAgreementDirection;\n /**\n * Other Connector's Endpoint\n * @type {string}\n * @memberof TransferHistoryEntry\n */\n counterPartyConnectorEndpoint: string;\n /**\n * Other Connector's Participant ID\n * @type {string}\n * @memberof TransferHistoryEntry\n */\n counterPartyParticipantId: string;\n /**\n * Asset Name\n * @type {string}\n * @memberof TransferHistoryEntry\n */\n assetName: string;\n /**\n * Asset ID\n * @type {string}\n * @memberof TransferHistoryEntry\n */\n assetId: string;\n /**\n * Error Message\n * @type {string}\n * @memberof TransferHistoryEntry\n */\n errorMessage?: string;\n /**\n * Whether this transfer is available for consumption via an EDR.\n * @type {boolean}\n * @memberof TransferHistoryEntry\n */\n isEdrConsumable: boolean;\n}\n\n/**\n * Check if a given object implements the TransferHistoryEntry interface.\n */\nexport function instanceOfTransferHistoryEntry(\n value: any,\n): value is TransferHistoryEntry {\n if (\n !('transferProcessId' in value) ||\n value['transferProcessId'] === undefined\n )\n return false;\n if (!('createdDate' in value) || value['createdDate'] === undefined)\n return false;\n if (!('lastUpdatedDate' in value) || value['lastUpdatedDate'] === undefined)\n return false;\n if (!('transferType' in value) || value['transferType'] === undefined)\n return false;\n if (!('state' in value) || value['state'] === undefined) return false;\n if (\n !('contractAgreementId' in value) ||\n value['contractAgreementId'] === undefined\n )\n return false;\n if (!('direction' in value) || value['direction'] === undefined)\n return false;\n if (\n !('counterPartyConnectorEndpoint' in value) ||\n value['counterPartyConnectorEndpoint'] === undefined\n )\n return false;\n if (\n !('counterPartyParticipantId' in value) ||\n value['counterPartyParticipantId'] === undefined\n )\n return false;\n if (!('assetName' in value) || value['assetName'] === undefined)\n return false;\n if (!('assetId' in value) || value['assetId'] === undefined) return false;\n if (!('isEdrConsumable' in value) || value['isEdrConsumable'] === undefined)\n return false;\n return true;\n}\n\nexport function TransferHistoryEntryFromJSON(json: any): TransferHistoryEntry {\n return TransferHistoryEntryFromJSONTyped(json, false);\n}\n\nexport function TransferHistoryEntryFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): TransferHistoryEntry {\n if (json == null) {\n return json;\n }\n return {\n transferProcessId: json['transferProcessId'],\n createdDate: new Date(json['createdDate']),\n lastUpdatedDate: new Date(json['lastUpdatedDate']),\n transferType: json['transferType'],\n state: TransferProcessStateFromJSON(json['state']),\n contractAgreementId: json['contractAgreementId'],\n direction: ContractAgreementDirectionFromJSON(json['direction']),\n counterPartyConnectorEndpoint: json['counterPartyConnectorEndpoint'],\n counterPartyParticipantId: json['counterPartyParticipantId'],\n assetName: json['assetName'],\n assetId: json['assetId'],\n errorMessage:\n json['errorMessage'] == null ? undefined : json['errorMessage'],\n isEdrConsumable: json['isEdrConsumable'],\n };\n}\n\nexport function TransferHistoryEntryToJSON(json: any): TransferHistoryEntry {\n return TransferHistoryEntryToJSONTyped(json, false);\n}\n\nexport function TransferHistoryEntryToJSONTyped(\n value?: TransferHistoryEntry | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n transferProcessId: value['transferProcessId'],\n createdDate: value['createdDate'].toISOString(),\n lastUpdatedDate: value['lastUpdatedDate'].toISOString(),\n transferType: value['transferType'],\n state: TransferProcessStateToJSON(value['state']),\n contractAgreementId: value['contractAgreementId'],\n direction: ContractAgreementDirectionToJSON(value['direction']),\n counterPartyConnectorEndpoint: value['counterPartyConnectorEndpoint'],\n counterPartyParticipantId: value['counterPartyParticipantId'],\n assetName: value['assetName'],\n assetId: value['assetId'],\n errorMessage: value['errorMessage'],\n isEdrConsumable: value['isEdrConsumable'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {TransferHistoryEntry} from './TransferHistoryEntry';\nimport {\n TransferHistoryEntryFromJSON,\n TransferHistoryEntryFromJSONTyped,\n TransferHistoryEntryToJSON,\n TransferHistoryEntryToJSONTyped,\n} from './TransferHistoryEntry';\n\n/**\n * Data as required by the UI's Transfer History Page\n * @export\n * @interface TransferHistoryPage\n */\nexport interface TransferHistoryPage {\n /**\n * Transfer History Page Entries\n * @type {Array<TransferHistoryEntry>}\n * @memberof TransferHistoryPage\n */\n transferEntries: Array<TransferHistoryEntry>;\n}\n\n/**\n * Check if a given object implements the TransferHistoryPage interface.\n */\nexport function instanceOfTransferHistoryPage(\n value: any,\n): value is TransferHistoryPage {\n if (!('transferEntries' in value) || value['transferEntries'] === undefined)\n return false;\n return true;\n}\n\nexport function TransferHistoryPageFromJSON(json: any): TransferHistoryPage {\n return TransferHistoryPageFromJSONTyped(json, false);\n}\n\nexport function TransferHistoryPageFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): TransferHistoryPage {\n if (json == null) {\n return json;\n }\n return {\n transferEntries: (json['transferEntries'] as Array<any>).map(\n TransferHistoryEntryFromJSON,\n ),\n };\n}\n\nexport function TransferHistoryPageToJSON(json: any): TransferHistoryPage {\n return TransferHistoryPageToJSONTyped(json, false);\n}\n\nexport function TransferHistoryPageToJSONTyped(\n value?: TransferHistoryPage | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n transferEntries: (value['transferEntries'] as Array<any>).map(\n TransferHistoryEntryToJSON,\n ),\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {TransferProcessState} from './TransferProcessState';\nimport {\n TransferProcessStateFromJSON,\n TransferProcessStateFromJSONTyped,\n TransferProcessStateToJSON,\n TransferProcessStateToJSONTyped,\n} from './TransferProcessState';\n\n/**\n * Transfer process state\n * @export\n * @interface TransferProcessStateResult\n */\nexport interface TransferProcessStateResult {\n /**\n * Transfer Process ID\n * @type {string}\n * @memberof TransferProcessStateResult\n */\n transferId: string;\n /**\n * Transfer Process State\n * @type {TransferProcessState}\n * @memberof TransferProcessStateResult\n */\n state: TransferProcessState;\n /**\n * Transfer Process State Last Change\n * @type {Date}\n * @memberof TransferProcessStateResult\n */\n stateChangedAt: Date;\n /**\n * Whether this transfer is available for consumption via an EDR.\n * @type {boolean}\n * @memberof TransferProcessStateResult\n */\n isEdrConsumable: boolean;\n}\n\n/**\n * Check if a given object implements the TransferProcessStateResult interface.\n */\nexport function instanceOfTransferProcessStateResult(\n value: any,\n): value is TransferProcessStateResult {\n if (!('transferId' in value) || value['transferId'] === undefined)\n return false;\n if (!('state' in value) || value['state'] === undefined) return false;\n if (!('stateChangedAt' in value) || value['stateChangedAt'] === undefined)\n return false;\n if (!('isEdrConsumable' in value) || value['isEdrConsumable'] === undefined)\n return false;\n return true;\n}\n\nexport function TransferProcessStateResultFromJSON(\n json: any,\n): TransferProcessStateResult {\n return TransferProcessStateResultFromJSONTyped(json, false);\n}\n\nexport function TransferProcessStateResultFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): TransferProcessStateResult {\n if (json == null) {\n return json;\n }\n return {\n transferId: json['transferId'],\n state: TransferProcessStateFromJSON(json['state']),\n stateChangedAt: new Date(json['stateChangedAt']),\n isEdrConsumable: json['isEdrConsumable'],\n };\n}\n\nexport function TransferProcessStateResultToJSON(\n json: any,\n): TransferProcessStateResult {\n return TransferProcessStateResultToJSONTyped(json, false);\n}\n\nexport function TransferProcessStateResultToJSONTyped(\n value?: TransferProcessStateResult | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n transferId: value['transferId'],\n state: TransferProcessStateToJSON(value['state']),\n stateChangedAt: value['stateChangedAt'].toISOString(),\n isEdrConsumable: value['isEdrConsumable'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {UiAssetExtForSphinx} from './UiAssetExtForSphinx';\nimport {\n UiAssetExtForSphinxFromJSON,\n UiAssetExtForSphinxFromJSONTyped,\n UiAssetExtForSphinxToJSON,\n UiAssetExtForSphinxToJSONTyped,\n} from './UiAssetExtForSphinx';\nimport type {UiDataSource} from './UiDataSource';\nimport {\n UiDataSourceFromJSON,\n UiDataSourceFromJSONTyped,\n UiDataSourceToJSON,\n UiDataSourceToJSONTyped,\n} from './UiDataSource';\n\n/**\n * Type-safe data offer metadata for editing an asset as supported by the sovity product landscape. Contains extension points.\n * @export\n * @interface UiAssetEditRequest\n */\nexport interface UiAssetEditRequest {\n /**\n * Data Source\n * @type {UiDataSource}\n * @memberof UiAssetEditRequest\n */\n dataSourceOverrideOrNull?: UiDataSource;\n /**\n * Asset Title\n * @type {string}\n * @memberof UiAssetEditRequest\n */\n title?: string;\n /**\n * Asset Language\n * @type {string}\n * @memberof UiAssetEditRequest\n */\n language?: string;\n /**\n * Asset Description\n * @type {string}\n * @memberof UiAssetEditRequest\n */\n description?: string;\n /**\n * Asset Homepage\n * @type {string}\n * @memberof UiAssetEditRequest\n */\n publisherHomepage?: string;\n /**\n * License URL\n * @type {string}\n * @memberof UiAssetEditRequest\n */\n licenseUrl?: string;\n /**\n * Version\n * @type {string}\n * @memberof UiAssetEditRequest\n */\n version?: string;\n /**\n * Asset Keywords\n * @type {Array<string>}\n * @memberof UiAssetEditRequest\n */\n keywords?: Array<string>;\n /**\n * Asset MediaType\n * @type {string}\n * @memberof UiAssetEditRequest\n */\n mediaType?: string;\n /**\n * Landing Page URL\n * @type {string}\n * @memberof UiAssetEditRequest\n */\n landingPageUrl?: string;\n /**\n * Data Model\n * @type {string}\n * @memberof UiAssetEditRequest\n */\n dataModel?: string;\n /**\n * The sovereign is distinct from the publisher by being the legal owner of the data.\n * @type {string}\n * @memberof UiAssetEditRequest\n */\n sovereignLegalName?: string;\n /**\n * Data sample URLs\n * @type {Array<string>}\n * @memberof UiAssetEditRequest\n */\n dataSampleUrls?: Array<string>;\n /**\n * Reference file/schema URLs\n * @type {Array<string>}\n * @memberof UiAssetEditRequest\n */\n referenceFileUrls?: Array<string>;\n /**\n * Additional information on reference files/schemas\n * @type {string}\n * @memberof UiAssetEditRequest\n */\n referenceFilesDescription?: string;\n /**\n * Instructions for use that are not legally relevant e.g. information on how to cite the dataset in papers\n * @type {string}\n * @memberof UiAssetEditRequest\n */\n conditionsForUse?: string;\n /**\n * Data update frequency\n * @type {string}\n * @memberof UiAssetEditRequest\n */\n dataUpdateFrequency?: string;\n /**\n * Temporal coverage start date\n * @type {Date}\n * @memberof UiAssetEditRequest\n */\n temporalCoverageFrom?: Date;\n /**\n * Temporal coverage end date (inclusive)\n * @type {Date}\n * @memberof UiAssetEditRequest\n */\n temporalCoverageToInclusive?: Date;\n /**\n * sphin-x dataspace specific asset metadata fields\n * @type {UiAssetExtForSphinx}\n * @memberof UiAssetEditRequest\n */\n sphinxFields?: UiAssetExtForSphinx;\n /**\n * Contains serialized custom properties in the JSON format.\n * @type {string}\n * @memberof UiAssetEditRequest\n */\n customJsonAsString?: string;\n /**\n * Contains serialized custom properties in the JSON LD format. Contrary to the customJsonAsString field, this string must represent a JSON LD object and will be affected by JSON LD compaction and expansion. Due to a technical limitation, the properties can't be booleans.\n * @type {string}\n * @memberof UiAssetEditRequest\n */\n customJsonLdAsString?: string;\n /**\n * Same as customJsonAsString but the data will be stored in the private properties.\n * @type {string}\n * @memberof UiAssetEditRequest\n */\n privateCustomJsonAsString?: string;\n /**\n * Same as customJsonLdAsString but the data will be stored in the private properties. The same limitations apply.\n * @type {string}\n * @memberof UiAssetEditRequest\n */\n privateCustomJsonLdAsString?: string;\n}\n\n/**\n * Check if a given object implements the UiAssetEditRequest interface.\n */\nexport function instanceOfUiAssetEditRequest(\n value: any,\n): value is UiAssetEditRequest {\n return true;\n}\n\nexport function UiAssetEditRequestFromJSON(json: any): UiAssetEditRequest {\n return UiAssetEditRequestFromJSONTyped(json, false);\n}\n\nexport function UiAssetEditRequestFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): UiAssetEditRequest {\n if (json == null) {\n return json;\n }\n return {\n dataSourceOverrideOrNull:\n json['dataSourceOverrideOrNull'] == null\n ? undefined\n : UiDataSourceFromJSON(json['dataSourceOverrideOrNull']),\n title: json['title'] == null ? undefined : json['title'],\n language: json['language'] == null ? undefined : json['language'],\n description:\n json['description'] == null ? undefined : json['description'],\n publisherHomepage:\n json['publisherHomepage'] == null\n ? undefined\n : json['publisherHomepage'],\n licenseUrl: json['licenseUrl'] == null ? undefined : json['licenseUrl'],\n version: json['version'] == null ? undefined : json['version'],\n keywords: json['keywords'] == null ? undefined : json['keywords'],\n mediaType: json['mediaType'] == null ? undefined : json['mediaType'],\n landingPageUrl:\n json['landingPageUrl'] == null ? undefined : json['landingPageUrl'],\n dataModel: json['dataModel'] == null ? undefined : json['dataModel'],\n sovereignLegalName:\n json['sovereignLegalName'] == null\n ? undefined\n : json['sovereignLegalName'],\n dataSampleUrls:\n json['dataSampleUrls'] == null ? undefined : json['dataSampleUrls'],\n referenceFileUrls:\n json['referenceFileUrls'] == null\n ? undefined\n : json['referenceFileUrls'],\n referenceFilesDescription:\n json['referenceFilesDescription'] == null\n ? undefined\n : json['referenceFilesDescription'],\n conditionsForUse:\n json['conditionsForUse'] == null\n ? undefined\n : json['conditionsForUse'],\n dataUpdateFrequency:\n json['dataUpdateFrequency'] == null\n ? undefined\n : json['dataUpdateFrequency'],\n temporalCoverageFrom:\n json['temporalCoverageFrom'] == null\n ? undefined\n : new Date(json['temporalCoverageFrom']),\n temporalCoverageToInclusive:\n json['temporalCoverageToInclusive'] == null\n ? undefined\n : new Date(json['temporalCoverageToInclusive']),\n sphinxFields:\n json['sphinxFields'] == null\n ? undefined\n : UiAssetExtForSphinxFromJSON(json['sphinxFields']),\n customJsonAsString:\n json['customJsonAsString'] == null\n ? undefined\n : json['customJsonAsString'],\n customJsonLdAsString:\n json['customJsonLdAsString'] == null\n ? undefined\n : json['customJsonLdAsString'],\n privateCustomJsonAsString:\n json['privateCustomJsonAsString'] == null\n ? undefined\n : json['privateCustomJsonAsString'],\n privateCustomJsonLdAsString:\n json['privateCustomJsonLdAsString'] == null\n ? undefined\n : json['privateCustomJsonLdAsString'],\n };\n}\n\nexport function UiAssetEditRequestToJSON(json: any): UiAssetEditRequest {\n return UiAssetEditRequestToJSONTyped(json, false);\n}\n\nexport function UiAssetEditRequestToJSONTyped(\n value?: UiAssetEditRequest | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n dataSourceOverrideOrNull: UiDataSourceToJSON(\n value['dataSourceOverrideOrNull'],\n ),\n title: value['title'],\n language: value['language'],\n description: value['description'],\n publisherHomepage: value['publisherHomepage'],\n licenseUrl: value['licenseUrl'],\n version: value['version'],\n keywords: value['keywords'],\n mediaType: value['mediaType'],\n landingPageUrl: value['landingPageUrl'],\n dataModel: value['dataModel'],\n sovereignLegalName: value['sovereignLegalName'],\n dataSampleUrls: value['dataSampleUrls'],\n referenceFileUrls: value['referenceFileUrls'],\n referenceFilesDescription: value['referenceFilesDescription'],\n conditionsForUse: value['conditionsForUse'],\n dataUpdateFrequency: value['dataUpdateFrequency'],\n temporalCoverageFrom:\n value['temporalCoverageFrom'] == null\n ? undefined\n : value['temporalCoverageFrom'].toISOString().substring(0, 10),\n temporalCoverageToInclusive:\n value['temporalCoverageToInclusive'] == null\n ? undefined\n : value['temporalCoverageToInclusive']\n .toISOString()\n .substring(0, 10),\n sphinxFields: UiAssetExtForSphinxToJSON(value['sphinxFields']),\n customJsonAsString: value['customJsonAsString'],\n customJsonLdAsString: value['customJsonLdAsString'],\n privateCustomJsonAsString: value['privateCustomJsonAsString'],\n privateCustomJsonLdAsString: value['privateCustomJsonLdAsString'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n/* eslint-disable */\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n/**\n * Enabled UI Features\n * @export\n */\nexport const UiConfigFeature = {\n ConnectorLimits: 'CONNECTOR_LIMITS',\n OpenSourceMarketing: 'OPEN_SOURCE_MARKETING',\n EeBasicMarketing: 'EE_BASIC_MARKETING',\n CatenaPolicies: 'CATENA_POLICIES',\n SovityPolicies: 'SOVITY_POLICIES',\n SphinxPolicies: 'SPHINX_POLICIES',\n SphinxAssetMetadata: 'SPHINX_ASSET_METADATA',\n BusinessPartnerGroupManagement: 'BUSINESS_PARTNER_GROUP_MANAGEMENT',\n} as const;\nexport type UiConfigFeature =\n (typeof UiConfigFeature)[keyof typeof UiConfigFeature];\n\nexport function instanceOfUiConfigFeature(value: any): boolean {\n for (const key in UiConfigFeature) {\n if (Object.prototype.hasOwnProperty.call(UiConfigFeature, key)) {\n if (\n UiConfigFeature[key as keyof typeof UiConfigFeature] === value\n ) {\n return true;\n }\n }\n }\n return false;\n}\n\nexport function UiConfigFeatureFromJSON(json: any): UiConfigFeature {\n return UiConfigFeatureFromJSONTyped(json, false);\n}\n\nexport function UiConfigFeatureFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): UiConfigFeature {\n return json as UiConfigFeature;\n}\n\nexport function UiConfigFeatureToJSON(value?: UiConfigFeature | null): any {\n return value as any;\n}\n\nexport function UiConfigFeatureToJSONTyped(\n value: any,\n ignoreDiscriminator: boolean,\n): UiConfigFeature {\n return value as UiConfigFeature;\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\n\n/**\n * Pre-configured counterparty for the Catalog\n * @export\n * @interface UiConfigPreconfiguredCounterparty\n */\nexport interface UiConfigPreconfiguredCounterparty {\n /**\n * Participant ID\n * @type {string}\n * @memberof UiConfigPreconfiguredCounterparty\n */\n participantId: string;\n /**\n * Connector Endpoint\n * @type {string}\n * @memberof UiConfigPreconfiguredCounterparty\n */\n connectorEndpoint: string;\n}\n\n/**\n * Check if a given object implements the UiConfigPreconfiguredCounterparty interface.\n */\nexport function instanceOfUiConfigPreconfiguredCounterparty(\n value: any,\n): value is UiConfigPreconfiguredCounterparty {\n if (!('participantId' in value) || value['participantId'] === undefined)\n return false;\n if (\n !('connectorEndpoint' in value) ||\n value['connectorEndpoint'] === undefined\n )\n return false;\n return true;\n}\n\nexport function UiConfigPreconfiguredCounterpartyFromJSON(\n json: any,\n): UiConfigPreconfiguredCounterparty {\n return UiConfigPreconfiguredCounterpartyFromJSONTyped(json, false);\n}\n\nexport function UiConfigPreconfiguredCounterpartyFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): UiConfigPreconfiguredCounterparty {\n if (json == null) {\n return json;\n }\n return {\n participantId: json['participantId'],\n connectorEndpoint: json['connectorEndpoint'],\n };\n}\n\nexport function UiConfigPreconfiguredCounterpartyToJSON(\n json: any,\n): UiConfigPreconfiguredCounterparty {\n return UiConfigPreconfiguredCounterpartyToJSONTyped(json, false);\n}\n\nexport function UiConfigPreconfiguredCounterpartyToJSONTyped(\n value?: UiConfigPreconfiguredCounterparty | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n participantId: value['participantId'],\n connectorEndpoint: value['connectorEndpoint'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {UiConfigFeature} from './UiConfigFeature';\nimport {\n UiConfigFeatureFromJSON,\n UiConfigFeatureFromJSONTyped,\n UiConfigFeatureToJSON,\n UiConfigFeatureToJSONTyped,\n} from './UiConfigFeature';\nimport type {UiConfigPreconfiguredCounterparty} from './UiConfigPreconfiguredCounterparty';\nimport {\n UiConfigPreconfiguredCounterpartyFromJSON,\n UiConfigPreconfiguredCounterpartyFromJSONTyped,\n UiConfigPreconfiguredCounterpartyToJSON,\n UiConfigPreconfiguredCounterpartyToJSONTyped,\n} from './UiConfigPreconfiguredCounterparty';\n\n/**\n * UI Config\n * @export\n * @interface UiConfig\n */\nexport interface UiConfig {\n /**\n * Enabled features\n * @type {Array<UiConfigFeature>}\n * @memberof UiConfig\n */\n features: Array<UiConfigFeature>;\n /**\n * Pre-configured Counterparty Connectors\n * @type {Array<UiConfigPreconfiguredCounterparty>}\n * @memberof UiConfig\n */\n preconfiguredCounterparties: Array<UiConfigPreconfiguredCounterparty>;\n /**\n * Logout URL\n * @type {string}\n * @memberof UiConfig\n */\n logoutUrl?: string;\n /**\n * Documentation URL\n * @type {string}\n * @memberof UiConfig\n */\n documentationUrl?: string;\n /**\n * Support URL\n * @type {string}\n * @memberof UiConfig\n */\n supportUrl?: string;\n /**\n * Privacy Policy URL\n * @type {string}\n * @memberof UiConfig\n */\n privacyPolicyUrl?: string;\n /**\n * Legal Notice URL\n * @type {string}\n * @memberof UiConfig\n */\n legalNoticeUrl?: string;\n /**\n * ICP Footer Link Text\n * @type {string}\n * @memberof UiConfig\n */\n icpFooterLinkText?: string;\n /**\n * ICP Footer Link URL\n * @type {string}\n * @memberof UiConfig\n */\n icpFooterLinkUrl?: string;\n}\n\n/**\n * Check if a given object implements the UiConfig interface.\n */\nexport function instanceOfUiConfig(value: any): value is UiConfig {\n if (!('features' in value) || value['features'] === undefined) return false;\n if (\n !('preconfiguredCounterparties' in value) ||\n value['preconfiguredCounterparties'] === undefined\n )\n return false;\n return true;\n}\n\nexport function UiConfigFromJSON(json: any): UiConfig {\n return UiConfigFromJSONTyped(json, false);\n}\n\nexport function UiConfigFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): UiConfig {\n if (json == null) {\n return json;\n }\n return {\n features: (json['features'] as Array<any>).map(UiConfigFeatureFromJSON),\n preconfiguredCounterparties: (\n json['preconfiguredCounterparties'] as Array<any>\n ).map(UiConfigPreconfiguredCounterpartyFromJSON),\n logoutUrl: json['logoutUrl'] == null ? undefined : json['logoutUrl'],\n documentationUrl:\n json['documentationUrl'] == null\n ? undefined\n : json['documentationUrl'],\n supportUrl: json['supportUrl'] == null ? undefined : json['supportUrl'],\n privacyPolicyUrl:\n json['privacyPolicyUrl'] == null\n ? undefined\n : json['privacyPolicyUrl'],\n legalNoticeUrl:\n json['legalNoticeUrl'] == null ? undefined : json['legalNoticeUrl'],\n icpFooterLinkText:\n json['icpFooterLinkText'] == null\n ? undefined\n : json['icpFooterLinkText'],\n icpFooterLinkUrl:\n json['icpFooterLinkUrl'] == null\n ? undefined\n : json['icpFooterLinkUrl'],\n };\n}\n\nexport function UiConfigToJSON(json: any): UiConfig {\n return UiConfigToJSONTyped(json, false);\n}\n\nexport function UiConfigToJSONTyped(\n value?: UiConfig | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n features: (value['features'] as Array<any>).map(UiConfigFeatureToJSON),\n preconfiguredCounterparties: (\n value['preconfiguredCounterparties'] as Array<any>\n ).map(UiConfigPreconfiguredCounterpartyToJSON),\n logoutUrl: value['logoutUrl'],\n documentationUrl: value['documentationUrl'],\n supportUrl: value['supportUrl'],\n privacyPolicyUrl: value['privacyPolicyUrl'],\n legalNoticeUrl: value['legalNoticeUrl'],\n icpFooterLinkText: value['icpFooterLinkText'],\n icpFooterLinkUrl: value['icpFooterLinkUrl'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {ContractNegotiationState} from './ContractNegotiationState';\nimport {\n ContractNegotiationStateFromJSON,\n ContractNegotiationStateFromJSONTyped,\n ContractNegotiationStateToJSON,\n ContractNegotiationStateToJSONTyped,\n} from './ContractNegotiationState';\n\n/**\n * Contract Negotiation Information\n * @export\n * @interface UiContractNegotiation\n */\nexport interface UiContractNegotiation {\n /**\n * Contract Negotiation Id\n * @type {string}\n * @memberof UiContractNegotiation\n */\n contractNegotiationId: string;\n /**\n * Contract Negotiation Creation Time\n * @type {Date}\n * @memberof UiContractNegotiation\n */\n createdAt: Date;\n /**\n * Contract Agreement Id\n * @type {string}\n * @memberof UiContractNegotiation\n */\n contractAgreementId?: string;\n /**\n * State of the Contract Negotiation state machine\n * @type {ContractNegotiationState}\n * @memberof UiContractNegotiation\n */\n state: ContractNegotiationState;\n}\n\n/**\n * Check if a given object implements the UiContractNegotiation interface.\n */\nexport function instanceOfUiContractNegotiation(\n value: any,\n): value is UiContractNegotiation {\n if (\n !('contractNegotiationId' in value) ||\n value['contractNegotiationId'] === undefined\n )\n return false;\n if (!('createdAt' in value) || value['createdAt'] === undefined)\n return false;\n if (!('state' in value) || value['state'] === undefined) return false;\n return true;\n}\n\nexport function UiContractNegotiationFromJSON(\n json: any,\n): UiContractNegotiation {\n return UiContractNegotiationFromJSONTyped(json, false);\n}\n\nexport function UiContractNegotiationFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): UiContractNegotiation {\n if (json == null) {\n return json;\n }\n return {\n contractNegotiationId: json['contractNegotiationId'],\n createdAt: new Date(json['createdAt']),\n contractAgreementId:\n json['contractAgreementId'] == null\n ? undefined\n : json['contractAgreementId'],\n state: ContractNegotiationStateFromJSON(json['state']),\n };\n}\n\nexport function UiContractNegotiationToJSON(json: any): UiContractNegotiation {\n return UiContractNegotiationToJSONTyped(json, false);\n}\n\nexport function UiContractNegotiationToJSONTyped(\n value?: UiContractNegotiation | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n contractNegotiationId: value['contractNegotiationId'],\n createdAt: value['createdAt'].toISOString(),\n contractAgreementId: value['contractAgreementId'],\n state: ContractNegotiationStateToJSON(value['state']),\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {UiPolicy} from './UiPolicy';\nimport {\n UiPolicyFromJSON,\n UiPolicyFromJSONTyped,\n UiPolicyToJSON,\n UiPolicyToJSONTyped,\n} from './UiPolicy';\n\n/**\n * Catalog Data Offer's Contract Offer as required by the UI\n * @export\n * @interface UiContractOffer\n */\nexport interface UiContractOffer {\n /**\n * Contract Offer ID\n * @type {string}\n * @memberof UiContractOffer\n */\n contractOfferId: string;\n /**\n * Policy\n * @type {UiPolicy}\n * @memberof UiContractOffer\n */\n policy: UiPolicy;\n}\n\n/**\n * Check if a given object implements the UiContractOffer interface.\n */\nexport function instanceOfUiContractOffer(\n value: any,\n): value is UiContractOffer {\n if (!('contractOfferId' in value) || value['contractOfferId'] === undefined)\n return false;\n if (!('policy' in value) || value['policy'] === undefined) return false;\n return true;\n}\n\nexport function UiContractOfferFromJSON(json: any): UiContractOffer {\n return UiContractOfferFromJSONTyped(json, false);\n}\n\nexport function UiContractOfferFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): UiContractOffer {\n if (json == null) {\n return json;\n }\n return {\n contractOfferId: json['contractOfferId'],\n policy: UiPolicyFromJSON(json['policy']),\n };\n}\n\nexport function UiContractOfferToJSON(json: any): UiContractOffer {\n return UiContractOfferToJSONTyped(json, false);\n}\n\nexport function UiContractOfferToJSONTyped(\n value?: UiContractOffer | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n contractOfferId: value['contractOfferId'],\n policy: UiPolicyToJSON(value['policy']),\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {UiAsset} from './UiAsset';\nimport {\n UiAssetFromJSON,\n UiAssetFromJSONTyped,\n UiAssetToJSON,\n UiAssetToJSONTyped,\n} from './UiAsset';\nimport type {UiContractOffer} from './UiContractOffer';\nimport {\n UiContractOfferFromJSON,\n UiContractOfferFromJSONTyped,\n UiContractOfferToJSON,\n UiContractOfferToJSONTyped,\n} from './UiContractOffer';\n\n/**\n * Catalog Data Offer as required by the UI\n * @export\n * @interface UiDataOffer\n */\nexport interface UiDataOffer {\n /**\n * Connector Endpoint\n * @type {string}\n * @memberof UiDataOffer\n */\n endpoint: string;\n /**\n * Participant ID. Required for initiating transfers.\n * @type {string}\n * @memberof UiDataOffer\n */\n participantId: string;\n /**\n * Asset Information\n * @type {UiAsset}\n * @memberof UiDataOffer\n */\n asset: UiAsset;\n /**\n * Available Contract Offers\n * @type {Array<UiContractOffer>}\n * @memberof UiDataOffer\n */\n contractOffers: Array<UiContractOffer>;\n}\n\n/**\n * Check if a given object implements the UiDataOffer interface.\n */\nexport function instanceOfUiDataOffer(value: any): value is UiDataOffer {\n if (!('endpoint' in value) || value['endpoint'] === undefined) return false;\n if (!('participantId' in value) || value['participantId'] === undefined)\n return false;\n if (!('asset' in value) || value['asset'] === undefined) return false;\n if (!('contractOffers' in value) || value['contractOffers'] === undefined)\n return false;\n return true;\n}\n\nexport function UiDataOfferFromJSON(json: any): UiDataOffer {\n return UiDataOfferFromJSONTyped(json, false);\n}\n\nexport function UiDataOfferFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): UiDataOffer {\n if (json == null) {\n return json;\n }\n return {\n endpoint: json['endpoint'],\n participantId: json['participantId'],\n asset: UiAssetFromJSON(json['asset']),\n contractOffers: (json['contractOffers'] as Array<any>).map(\n UiContractOfferFromJSON,\n ),\n };\n}\n\nexport function UiDataOfferToJSON(json: any): UiDataOffer {\n return UiDataOfferToJSONTyped(json, false);\n}\n\nexport function UiDataOfferToJSONTyped(\n value?: UiDataOffer | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n endpoint: value['endpoint'],\n participantId: value['participantId'],\n asset: UiAssetToJSON(value['asset']),\n contractOffers: (value['contractOffers'] as Array<any>).map(\n UiContractOfferToJSON,\n ),\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n/* eslint-disable */\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n/**\n * Supported HTTP Methods by UiDataSink\n * @export\n */\nexport const UiDataSinkHttpDataPushMethod = {\n Post: 'POST',\n Put: 'PUT',\n Patch: 'PATCH',\n Delete: 'DELETE',\n Options: 'OPTIONS',\n} as const;\nexport type UiDataSinkHttpDataPushMethod =\n (typeof UiDataSinkHttpDataPushMethod)[keyof typeof UiDataSinkHttpDataPushMethod];\n\nexport function instanceOfUiDataSinkHttpDataPushMethod(value: any): boolean {\n for (const key in UiDataSinkHttpDataPushMethod) {\n if (\n Object.prototype.hasOwnProperty.call(\n UiDataSinkHttpDataPushMethod,\n key,\n )\n ) {\n if (\n UiDataSinkHttpDataPushMethod[\n key as keyof typeof UiDataSinkHttpDataPushMethod\n ] === value\n ) {\n return true;\n }\n }\n }\n return false;\n}\n\nexport function UiDataSinkHttpDataPushMethodFromJSON(\n json: any,\n): UiDataSinkHttpDataPushMethod {\n return UiDataSinkHttpDataPushMethodFromJSONTyped(json, false);\n}\n\nexport function UiDataSinkHttpDataPushMethodFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): UiDataSinkHttpDataPushMethod {\n return json as UiDataSinkHttpDataPushMethod;\n}\n\nexport function UiDataSinkHttpDataPushMethodToJSON(\n value?: UiDataSinkHttpDataPushMethod | null,\n): any {\n return value as any;\n}\n\nexport function UiDataSinkHttpDataPushMethodToJSONTyped(\n value: any,\n ignoreDiscriminator: boolean,\n): UiDataSinkHttpDataPushMethod {\n return value as UiDataSinkHttpDataPushMethod;\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n/* eslint-disable */\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n/**\n * Supported authentication types for HTTP Push Transfers. OAuth2 is not supported in the deprecated HttpPush transfer type due to previous security concerns in the architecture of this flow\n * @export\n */\nexport const UiHttpPushAuthType = {\n Basic: 'BASIC',\n ApiKey: 'API_KEY',\n} as const;\nexport type UiHttpPushAuthType =\n (typeof UiHttpPushAuthType)[keyof typeof UiHttpPushAuthType];\n\nexport function instanceOfUiHttpPushAuthType(value: any): boolean {\n for (const key in UiHttpPushAuthType) {\n if (Object.prototype.hasOwnProperty.call(UiHttpPushAuthType, key)) {\n if (\n UiHttpPushAuthType[key as keyof typeof UiHttpPushAuthType] ===\n value\n ) {\n return true;\n }\n }\n }\n return false;\n}\n\nexport function UiHttpPushAuthTypeFromJSON(json: any): UiHttpPushAuthType {\n return UiHttpPushAuthTypeFromJSONTyped(json, false);\n}\n\nexport function UiHttpPushAuthTypeFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): UiHttpPushAuthType {\n return json as UiHttpPushAuthType;\n}\n\nexport function UiHttpPushAuthTypeToJSON(\n value?: UiHttpPushAuthType | null,\n): any {\n return value as any;\n}\n\nexport function UiHttpPushAuthTypeToJSONTyped(\n value: any,\n ignoreDiscriminator: boolean,\n): UiHttpPushAuthType {\n return value as UiHttpPushAuthType;\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {UiHttpAuthApiKey} from './UiHttpAuthApiKey';\nimport {\n UiHttpAuthApiKeyFromJSON,\n UiHttpAuthApiKeyFromJSONTyped,\n UiHttpAuthApiKeyToJSON,\n UiHttpAuthApiKeyToJSONTyped,\n} from './UiHttpAuthApiKey';\nimport type {UiHttpAuthBasic} from './UiHttpAuthBasic';\nimport {\n UiHttpAuthBasicFromJSON,\n UiHttpAuthBasicFromJSONTyped,\n UiHttpAuthBasicToJSON,\n UiHttpAuthBasicToJSONTyped,\n} from './UiHttpAuthBasic';\nimport type {UiHttpPushAuthType} from './UiHttpPushAuthType';\nimport {\n UiHttpPushAuthTypeFromJSON,\n UiHttpPushAuthTypeFromJSONTyped,\n UiHttpPushAuthTypeToJSON,\n UiHttpPushAuthTypeToJSONTyped,\n} from './UiHttpPushAuthType';\n\n/**\n * Available authentication methods for when pushing data into a data sink with HTTP PUSH. Use only one.\n * @export\n * @interface UiHttpPushAuth\n */\nexport interface UiHttpPushAuth {\n /**\n * The type of authentication.\n * @type {UiHttpPushAuthType}\n * @memberof UiHttpPushAuth\n */\n type: UiHttpPushAuthType;\n /**\n * Required when type=BASIC. To use basic authentication.\n * @type {UiHttpAuthBasic}\n * @memberof UiHttpPushAuth\n */\n basic?: UiHttpAuthBasic;\n /**\n * Required when type=API_KEY. To use api key authentication with a secret from the vault.\n * @type {UiHttpAuthApiKey}\n * @memberof UiHttpPushAuth\n */\n apiKey?: UiHttpAuthApiKey;\n}\n\n/**\n * Check if a given object implements the UiHttpPushAuth interface.\n */\nexport function instanceOfUiHttpPushAuth(value: any): value is UiHttpPushAuth {\n if (!('type' in value) || value['type'] === undefined) return false;\n return true;\n}\n\nexport function UiHttpPushAuthFromJSON(json: any): UiHttpPushAuth {\n return UiHttpPushAuthFromJSONTyped(json, false);\n}\n\nexport function UiHttpPushAuthFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): UiHttpPushAuth {\n if (json == null) {\n return json;\n }\n return {\n type: UiHttpPushAuthTypeFromJSON(json['type']),\n basic:\n json['basic'] == null\n ? undefined\n : UiHttpAuthBasicFromJSON(json['basic']),\n apiKey:\n json['apiKey'] == null\n ? undefined\n : UiHttpAuthApiKeyFromJSON(json['apiKey']),\n };\n}\n\nexport function UiHttpPushAuthToJSON(json: any): UiHttpPushAuth {\n return UiHttpPushAuthToJSONTyped(json, false);\n}\n\nexport function UiHttpPushAuthToJSONTyped(\n value?: UiHttpPushAuth | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n type: UiHttpPushAuthTypeToJSON(value['type']),\n basic: UiHttpAuthBasicToJSON(value['basic']),\n apiKey: UiHttpAuthApiKeyToJSON(value['apiKey']),\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {UiDataSinkHttpDataPushMethod} from './UiDataSinkHttpDataPushMethod';\nimport {\n UiDataSinkHttpDataPushMethodFromJSON,\n UiDataSinkHttpDataPushMethodFromJSONTyped,\n UiDataSinkHttpDataPushMethodToJSON,\n UiDataSinkHttpDataPushMethodToJSONTyped,\n} from './UiDataSinkHttpDataPushMethod';\nimport type {UiHttpPushAuth} from './UiHttpPushAuth';\nimport {\n UiHttpPushAuthFromJSON,\n UiHttpPushAuthFromJSONTyped,\n UiHttpPushAuthToJSON,\n UiHttpPushAuthToJSONTyped,\n} from './UiHttpPushAuth';\n\n/**\n * HTTP_DATA type Data Source. This is an HttpData-PUSH data sink. Note that consumption of parameterized data sources is not supported via HttpData-PUSH\n * @export\n * @interface UiDataSinkHttpDataPush\n */\nexport interface UiDataSinkHttpDataPush {\n /**\n * HTTP Request Method\n * @type {UiDataSinkHttpDataPushMethod}\n * @memberof UiDataSinkHttpDataPush\n */\n method?: UiDataSinkHttpDataPushMethod;\n /**\n * HTTP Request URL.\n * @type {string}\n * @memberof UiDataSinkHttpDataPush\n */\n baseUrl: string;\n /**\n * HTTP Request Query Params / Query String.\n * @type {string}\n * @memberof UiDataSinkHttpDataPush\n */\n queryString?: string;\n /**\n * The authentication method.\n * @type {UiHttpPushAuth}\n * @memberof UiDataSinkHttpDataPush\n */\n auth?: UiHttpPushAuth;\n /**\n * HTTP Request Headers.\n * @type {{ [key: string]: string; }}\n * @memberof UiDataSinkHttpDataPush\n */\n headers?: {[key: string]: string};\n}\n\n/**\n * Check if a given object implements the UiDataSinkHttpDataPush interface.\n */\nexport function instanceOfUiDataSinkHttpDataPush(\n value: any,\n): value is UiDataSinkHttpDataPush {\n if (!('baseUrl' in value) || value['baseUrl'] === undefined) return false;\n return true;\n}\n\nexport function UiDataSinkHttpDataPushFromJSON(\n json: any,\n): UiDataSinkHttpDataPush {\n return UiDataSinkHttpDataPushFromJSONTyped(json, false);\n}\n\nexport function UiDataSinkHttpDataPushFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): UiDataSinkHttpDataPush {\n if (json == null) {\n return json;\n }\n return {\n method:\n json['method'] == null\n ? undefined\n : UiDataSinkHttpDataPushMethodFromJSON(json['method']),\n baseUrl: json['baseUrl'],\n queryString:\n json['queryString'] == null ? undefined : json['queryString'],\n auth:\n json['auth'] == null\n ? undefined\n : UiHttpPushAuthFromJSON(json['auth']),\n headers: json['headers'] == null ? undefined : json['headers'],\n };\n}\n\nexport function UiDataSinkHttpDataPushToJSON(\n json: any,\n): UiDataSinkHttpDataPush {\n return UiDataSinkHttpDataPushToJSONTyped(json, false);\n}\n\nexport function UiDataSinkHttpDataPushToJSONTyped(\n value?: UiDataSinkHttpDataPush | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n method: UiDataSinkHttpDataPushMethodToJSON(value['method']),\n baseUrl: value['baseUrl'],\n queryString: value['queryString'],\n auth: UiHttpPushAuthToJSON(value['auth']),\n headers: value['headers'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n/* eslint-disable */\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n/**\n * Supported Data Sink Types by UiDataSink:\n * - `HTTP_DATA_PUSH`: This EDC's data plane pushes the data into the given data sink, putting the payload as request body.\n * - `HTTP_DATA_PROXY`: Once the transfer is in the status STARTED, you can call a 2nd endpoint to receive the EDR.\n * The EDR will contain an URL you can call as a proxy to the data source. Which parts of the HTTP call are passed\n * on is decided by the configuration of parameterization on the data source, e.g. an added path, method, body or query params.\n * - `CUSTOM`: Provide custom transfer type, data sink properties and transfer properties to use a\n * transfer type that is not fully integrated into the API Wrapper yet.\n *\n * @export\n */\nexport const UiInitiateTransferType = {\n HttpDataPush: 'HTTP_DATA_PUSH',\n HttpDataProxy: 'HTTP_DATA_PROXY',\n Custom: 'CUSTOM',\n} as const;\nexport type UiInitiateTransferType =\n (typeof UiInitiateTransferType)[keyof typeof UiInitiateTransferType];\n\nexport function instanceOfUiInitiateTransferType(value: any): boolean {\n for (const key in UiInitiateTransferType) {\n if (Object.prototype.hasOwnProperty.call(UiInitiateTransferType, key)) {\n if (\n UiInitiateTransferType[\n key as keyof typeof UiInitiateTransferType\n ] === value\n ) {\n return true;\n }\n }\n }\n return false;\n}\n\nexport function UiInitiateTransferTypeFromJSON(\n json: any,\n): UiInitiateTransferType {\n return UiInitiateTransferTypeFromJSONTyped(json, false);\n}\n\nexport function UiInitiateTransferTypeFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): UiInitiateTransferType {\n return json as UiInitiateTransferType;\n}\n\nexport function UiInitiateTransferTypeToJSON(\n value?: UiInitiateTransferType | null,\n): any {\n return value as any;\n}\n\nexport function UiInitiateTransferTypeToJSONTyped(\n value: any,\n ignoreDiscriminator: boolean,\n): UiInitiateTransferType {\n return value as UiInitiateTransferType;\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {CallbackAddressDto} from './CallbackAddressDto';\nimport {\n CallbackAddressDtoFromJSON,\n CallbackAddressDtoFromJSONTyped,\n CallbackAddressDtoToJSON,\n CallbackAddressDtoToJSONTyped,\n} from './CallbackAddressDto';\nimport type {UiDataSinkHttpDataPush} from './UiDataSinkHttpDataPush';\nimport {\n UiDataSinkHttpDataPushFromJSON,\n UiDataSinkHttpDataPushFromJSONTyped,\n UiDataSinkHttpDataPushToJSON,\n UiDataSinkHttpDataPushToJSONTyped,\n} from './UiDataSinkHttpDataPush';\nimport type {UiInitiateTransferType} from './UiInitiateTransferType';\nimport {\n UiInitiateTransferTypeFromJSON,\n UiInitiateTransferTypeFromJSONTyped,\n UiInitiateTransferTypeToJSON,\n UiInitiateTransferTypeToJSONTyped,\n} from './UiInitiateTransferType';\n\n/**\n * Type-safe data sink as supported by the sovity product landscape. Contains extension points for using custom data address properties.\n * @export\n * @interface UiInitiateTransferRequest\n */\nexport interface UiInitiateTransferRequest {\n /**\n * Contract Agreement ID\n * @type {string}\n * @memberof UiInitiateTransferRequest\n */\n contractAgreementId: string;\n /**\n * Type of a transfer to initiate\n * @type {UiInitiateTransferType}\n * @memberof UiInitiateTransferRequest\n */\n type: UiInitiateTransferType;\n /**\n * Only for type HTTP_DATA_PUSH\n * @type {UiDataSinkHttpDataPush}\n * @memberof UiInitiateTransferRequest\n */\n httpDataPush?: UiDataSinkHttpDataPush;\n /**\n * List of endpoints to call upon given transfer events\n * @type {Array<CallbackAddressDto>}\n * @memberof UiInitiateTransferRequest\n */\n callbackAddresses?: Array<CallbackAddressDto>;\n /**\n * For all types. Custom Data Address Properties.\n * @type {{ [key: string]: string; }}\n * @memberof UiInitiateTransferRequest\n */\n customDataSinkProperties?: {[key: string]: string};\n /**\n * For all types. Custom Transfer Process Properties.\n * @type {{ [key: string]: string; }}\n * @memberof UiInitiateTransferRequest\n */\n customTransferPrivateProperties?: {[key: string]: string};\n /**\n * For all types. Override the Transfer Type.\n * @type {string}\n * @memberof UiInitiateTransferRequest\n */\n customTransferType?: string;\n}\n\n/**\n * Check if a given object implements the UiInitiateTransferRequest interface.\n */\nexport function instanceOfUiInitiateTransferRequest(\n value: any,\n): value is UiInitiateTransferRequest {\n if (\n !('contractAgreementId' in value) ||\n value['contractAgreementId'] === undefined\n )\n return false;\n if (!('type' in value) || value['type'] === undefined) return false;\n return true;\n}\n\nexport function UiInitiateTransferRequestFromJSON(\n json: any,\n): UiInitiateTransferRequest {\n return UiInitiateTransferRequestFromJSONTyped(json, false);\n}\n\nexport function UiInitiateTransferRequestFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): UiInitiateTransferRequest {\n if (json == null) {\n return json;\n }\n return {\n contractAgreementId: json['contractAgreementId'],\n type: UiInitiateTransferTypeFromJSON(json['type']),\n httpDataPush:\n json['httpDataPush'] == null\n ? undefined\n : UiDataSinkHttpDataPushFromJSON(json['httpDataPush']),\n callbackAddresses:\n json['callbackAddresses'] == null\n ? undefined\n : (json['callbackAddresses'] as Array<any>).map(\n CallbackAddressDtoFromJSON,\n ),\n customDataSinkProperties:\n json['customDataSinkProperties'] == null\n ? undefined\n : json['customDataSinkProperties'],\n customTransferPrivateProperties:\n json['customTransferPrivateProperties'] == null\n ? undefined\n : json['customTransferPrivateProperties'],\n customTransferType:\n json['customTransferType'] == null\n ? undefined\n : json['customTransferType'],\n };\n}\n\nexport function UiInitiateTransferRequestToJSON(\n json: any,\n): UiInitiateTransferRequest {\n return UiInitiateTransferRequestToJSONTyped(json, false);\n}\n\nexport function UiInitiateTransferRequestToJSONTyped(\n value?: UiInitiateTransferRequest | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n contractAgreementId: value['contractAgreementId'],\n type: UiInitiateTransferTypeToJSON(value['type']),\n httpDataPush: UiDataSinkHttpDataPushToJSON(value['httpDataPush']),\n callbackAddresses:\n value['callbackAddresses'] == null\n ? undefined\n : (value['callbackAddresses'] as Array<any>).map(\n CallbackAddressDtoToJSON,\n ),\n customDataSinkProperties: value['customDataSinkProperties'],\n customTransferPrivateProperties:\n value['customTransferPrivateProperties'],\n customTransferType: value['customTransferType'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\n\n/**\n * Submit Request for creating a new User Managed Vault Secret\n * @export\n * @interface VaultSecretCreateSubmit\n */\nexport interface VaultSecretCreateSubmit {\n /**\n * Key\n * @type {string}\n * @memberof VaultSecretCreateSubmit\n */\n key: string;\n /**\n * Value\n * @type {string}\n * @memberof VaultSecretCreateSubmit\n */\n value: string;\n /**\n * Description\n * @type {string}\n * @memberof VaultSecretCreateSubmit\n */\n description: string;\n}\n\n/**\n * Check if a given object implements the VaultSecretCreateSubmit interface.\n */\nexport function instanceOfVaultSecretCreateSubmit(\n value: any,\n): value is VaultSecretCreateSubmit {\n if (!('key' in value) || value['key'] === undefined) return false;\n if (!('value' in value) || value['value'] === undefined) return false;\n if (!('description' in value) || value['description'] === undefined)\n return false;\n return true;\n}\n\nexport function VaultSecretCreateSubmitFromJSON(\n json: any,\n): VaultSecretCreateSubmit {\n return VaultSecretCreateSubmitFromJSONTyped(json, false);\n}\n\nexport function VaultSecretCreateSubmitFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): VaultSecretCreateSubmit {\n if (json == null) {\n return json;\n }\n return {\n key: json['key'],\n value: json['value'],\n description: json['description'],\n };\n}\n\nexport function VaultSecretCreateSubmitToJSON(\n json: any,\n): VaultSecretCreateSubmit {\n return VaultSecretCreateSubmitToJSONTyped(json, false);\n}\n\nexport function VaultSecretCreateSubmitToJSONTyped(\n value?: VaultSecretCreateSubmit | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n key: value['key'],\n value: value['value'],\n description: value['description'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\n\n/**\n * Data for the Edit Page for User Managed Vault Secrets\n * @export\n * @interface VaultSecretEditPage\n */\nexport interface VaultSecretEditPage {\n /**\n * Key\n * @type {string}\n * @memberof VaultSecretEditPage\n */\n key: string;\n /**\n * Description\n * @type {string}\n * @memberof VaultSecretEditPage\n */\n description: string;\n}\n\n/**\n * Check if a given object implements the VaultSecretEditPage interface.\n */\nexport function instanceOfVaultSecretEditPage(\n value: any,\n): value is VaultSecretEditPage {\n if (!('key' in value) || value['key'] === undefined) return false;\n if (!('description' in value) || value['description'] === undefined)\n return false;\n return true;\n}\n\nexport function VaultSecretEditPageFromJSON(json: any): VaultSecretEditPage {\n return VaultSecretEditPageFromJSONTyped(json, false);\n}\n\nexport function VaultSecretEditPageFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): VaultSecretEditPage {\n if (json == null) {\n return json;\n }\n return {\n key: json['key'],\n description: json['description'],\n };\n}\n\nexport function VaultSecretEditPageToJSON(json: any): VaultSecretEditPage {\n return VaultSecretEditPageToJSONTyped(json, false);\n}\n\nexport function VaultSecretEditPageToJSONTyped(\n value?: VaultSecretEditPage | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n key: value['key'],\n description: value['description'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\n\n/**\n * Submit Request for editing a User Managed Vault Secret\n * @export\n * @interface VaultSecretEditSubmit\n */\nexport interface VaultSecretEditSubmit {\n /**\n * Secret value of the vault secret. If null, will not change the stored value\n * @type {string}\n * @memberof VaultSecretEditSubmit\n */\n value?: string;\n /**\n * Description\n * @type {string}\n * @memberof VaultSecretEditSubmit\n */\n description: string;\n}\n\n/**\n * Check if a given object implements the VaultSecretEditSubmit interface.\n */\nexport function instanceOfVaultSecretEditSubmit(\n value: any,\n): value is VaultSecretEditSubmit {\n if (!('description' in value) || value['description'] === undefined)\n return false;\n return true;\n}\n\nexport function VaultSecretEditSubmitFromJSON(\n json: any,\n): VaultSecretEditSubmit {\n return VaultSecretEditSubmitFromJSONTyped(json, false);\n}\n\nexport function VaultSecretEditSubmitFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): VaultSecretEditSubmit {\n if (json == null) {\n return json;\n }\n return {\n value: json['value'] == null ? undefined : json['value'],\n description: json['description'],\n };\n}\n\nexport function VaultSecretEditSubmitToJSON(json: any): VaultSecretEditSubmit {\n return VaultSecretEditSubmitToJSONTyped(json, false);\n}\n\nexport function VaultSecretEditSubmitToJSONTyped(\n value?: VaultSecretEditSubmit | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n value: value['value'],\n description: value['description'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\n\n/**\n * List Page Entry for the List Page of User Managed Vault Secrets\n * @export\n * @interface VaultSecretListPageEntry\n */\nexport interface VaultSecretListPageEntry {\n /**\n * Key\n * @type {string}\n * @memberof VaultSecretListPageEntry\n */\n key: string;\n /**\n * Description\n * @type {string}\n * @memberof VaultSecretListPageEntry\n */\n description: string;\n /**\n * Updated At\n * @type {Date}\n * @memberof VaultSecretListPageEntry\n */\n updatedAt: Date;\n}\n\n/**\n * Check if a given object implements the VaultSecretListPageEntry interface.\n */\nexport function instanceOfVaultSecretListPageEntry(\n value: any,\n): value is VaultSecretListPageEntry {\n if (!('key' in value) || value['key'] === undefined) return false;\n if (!('description' in value) || value['description'] === undefined)\n return false;\n if (!('updatedAt' in value) || value['updatedAt'] === undefined)\n return false;\n return true;\n}\n\nexport function VaultSecretListPageEntryFromJSON(\n json: any,\n): VaultSecretListPageEntry {\n return VaultSecretListPageEntryFromJSONTyped(json, false);\n}\n\nexport function VaultSecretListPageEntryFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): VaultSecretListPageEntry {\n if (json == null) {\n return json;\n }\n return {\n key: json['key'],\n description: json['description'],\n updatedAt: new Date(json['updatedAt']),\n };\n}\n\nexport function VaultSecretListPageEntryToJSON(\n json: any,\n): VaultSecretListPageEntry {\n return VaultSecretListPageEntryToJSONTyped(json, false);\n}\n\nexport function VaultSecretListPageEntryToJSONTyped(\n value?: VaultSecretListPageEntry | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n key: value['key'],\n description: value['description'],\n updatedAt: value['updatedAt'].toISOString(),\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\n\n/**\n * Query for filtering Vault Secrets\n * @export\n * @interface VaultSecretQuery\n */\nexport interface VaultSecretQuery {\n /**\n * Search Query String\n * @type {string}\n * @memberof VaultSecretQuery\n */\n searchQuery?: string;\n /**\n * Number of items to display\n * @type {number}\n * @memberof VaultSecretQuery\n */\n limit?: number;\n}\n\n/**\n * Check if a given object implements the VaultSecretQuery interface.\n */\nexport function instanceOfVaultSecretQuery(\n value: any,\n): value is VaultSecretQuery {\n return true;\n}\n\nexport function VaultSecretQueryFromJSON(json: any): VaultSecretQuery {\n return VaultSecretQueryFromJSONTyped(json, false);\n}\n\nexport function VaultSecretQueryFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): VaultSecretQuery {\n if (json == null) {\n return json;\n }\n return {\n searchQuery:\n json['searchQuery'] == null ? undefined : json['searchQuery'],\n limit: json['limit'] == null ? undefined : json['limit'],\n };\n}\n\nexport function VaultSecretQueryToJSON(json: any): VaultSecretQuery {\n return VaultSecretQueryToJSONTyped(json, false);\n}\n\nexport function VaultSecretQueryToJSONTyped(\n value?: VaultSecretQuery | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n searchQuery: value['searchQuery'],\n limit: value['limit'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport type {ConnectorLimits, UiAssetCreateRequest} from '../models/index';\nimport {\n ConnectorLimitsFromJSON,\n ConnectorLimitsToJSON,\n UiAssetCreateRequestFromJSON,\n UiAssetCreateRequestToJSON,\n} from '../models/index';\nimport * as runtime from '../runtime';\n\nexport interface FileUploadCreateAssetRequest {\n blobId: string;\n uiAssetCreateRequest: UiAssetCreateRequest;\n}\n\n/**\n *\n */\nexport class EnterpriseEditionApi extends runtime.BaseAPI {\n /**\n * Available and used resources of a connector.\n */\n async connectorLimitsRaw(\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<ConnectorLimits>> {\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n const response = await this.request(\n {\n path: `/wrapper/ee/connector-limits`,\n method: 'GET',\n headers: headerParameters,\n query: queryParameters,\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n ConnectorLimitsFromJSON(jsonValue),\n );\n }\n\n /**\n * Available and used resources of a connector.\n */\n async connectorLimits(\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<ConnectorLimits> {\n const response = await this.connectorLimitsRaw(initOverrides);\n return await response.value();\n }\n\n /**\n * Creates an asset using the uploaded file as data source.\n * Create an asset from an uploaded file.\n */\n async fileUploadCreateAssetRaw(\n requestParameters: FileUploadCreateAssetRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<void>> {\n if (requestParameters['blobId'] == null) {\n throw new runtime.RequiredError(\n 'blobId',\n 'Required parameter \"blobId\" was null or undefined when calling fileUploadCreateAsset().',\n );\n }\n\n if (requestParameters['uiAssetCreateRequest'] == null) {\n throw new runtime.RequiredError(\n 'uiAssetCreateRequest',\n 'Required parameter \"uiAssetCreateRequest\" was null or undefined when calling fileUploadCreateAsset().',\n );\n }\n\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n headerParameters['Content-Type'] = 'application/json';\n\n const response = await this.request(\n {\n path: `/wrapper/ee/file-upload/blobs/{blobId}/asset`.replace(\n `{${'blobId'}}`,\n encodeURIComponent(String(requestParameters['blobId'])),\n ),\n method: 'POST',\n headers: headerParameters,\n query: queryParameters,\n body: UiAssetCreateRequestToJSON(\n requestParameters['uiAssetCreateRequest'],\n ),\n },\n initOverrides,\n );\n\n return new runtime.VoidApiResponse(response);\n }\n\n /**\n * Creates an asset using the uploaded file as data source.\n * Create an asset from an uploaded file.\n */\n async fileUploadCreateAsset(\n requestParameters: FileUploadCreateAssetRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<void> {\n await this.fileUploadCreateAssetRaw(requestParameters, initOverrides);\n }\n\n /**\n * Requests a Blob URL with a SAS Token so that the UI can directly upload the file to the Azure Blob Storage. Returns the Blob ID / Token.\n * Requests a Blob for file upload.\n */\n async fileUploadRequestSasTokenRaw(\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<string>> {\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n const response = await this.request(\n {\n path: `/wrapper/ee/file-upload/blobs`,\n method: 'POST',\n headers: headerParameters,\n query: queryParameters,\n },\n initOverrides,\n );\n\n if (this.isJsonMime(response.headers.get('content-type'))) {\n return new runtime.JSONApiResponse<string>(response);\n } else {\n return new runtime.TextApiResponse(response) as any;\n }\n }\n\n /**\n * Requests a Blob URL with a SAS Token so that the UI can directly upload the file to the Azure Blob Storage. Returns the Blob ID / Token.\n * Requests a Blob for file upload.\n */\n async fileUploadRequestSasToken(\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<string> {\n const response = await this.fileUploadRequestSasTokenRaw(initOverrides);\n return await response.value();\n }\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport type {\n AssetListPage,\n AssetListPageFilter,\n BuildInfo,\n BusinessPartnerGroupCreateSubmit,\n BusinessPartnerGroupEditPage,\n BusinessPartnerGroupEditSubmit,\n BusinessPartnerGroupListPageEntry,\n BusinessPartnerGroupQuery,\n ContractAgreementCard,\n ContractAgreementPage,\n ContractAgreementPageQuery,\n ContractDefinitionPage,\n ContractDefinitionRequest,\n ContractNegotiationRequest,\n ContractTerminationRequest,\n DashboardPage,\n DataOfferCreateRequest,\n IdAvailabilityResponse,\n IdResponseDto,\n InitiateCustomTransferRequest,\n InitiateTransferRequest,\n PolicyDefinitionCreateDto,\n PolicyDefinitionCreateRequest,\n PolicyDefinitionPage,\n TransferHistoryPage,\n UiAsset,\n UiAssetCreateRequest,\n UiAssetEditRequest,\n UiConfig,\n UiContractNegotiation,\n UiDataOffer,\n UiInitiateTransferRequest,\n VaultSecretCreateSubmit,\n VaultSecretEditPage,\n VaultSecretEditSubmit,\n VaultSecretListPageEntry,\n VaultSecretQuery,\n} from '../models/index';\nimport {\n AssetListPageFilterFromJSON,\n AssetListPageFilterToJSON,\n AssetListPageFromJSON,\n AssetListPageToJSON,\n BuildInfoFromJSON,\n BuildInfoToJSON,\n BusinessPartnerGroupCreateSubmitFromJSON,\n BusinessPartnerGroupCreateSubmitToJSON,\n BusinessPartnerGroupEditPageFromJSON,\n BusinessPartnerGroupEditPageToJSON,\n BusinessPartnerGroupEditSubmitFromJSON,\n BusinessPartnerGroupEditSubmitToJSON,\n BusinessPartnerGroupListPageEntryFromJSON,\n BusinessPartnerGroupListPageEntryToJSON,\n BusinessPartnerGroupQueryFromJSON,\n BusinessPartnerGroupQueryToJSON,\n ContractAgreementCardFromJSON,\n ContractAgreementCardToJSON,\n ContractAgreementPageFromJSON,\n ContractAgreementPageQueryFromJSON,\n ContractAgreementPageQueryToJSON,\n ContractAgreementPageToJSON,\n ContractDefinitionPageFromJSON,\n ContractDefinitionPageToJSON,\n ContractDefinitionRequestFromJSON,\n ContractDefinitionRequestToJSON,\n ContractNegotiationRequestFromJSON,\n ContractNegotiationRequestToJSON,\n ContractTerminationRequestFromJSON,\n ContractTerminationRequestToJSON,\n DashboardPageFromJSON,\n DashboardPageToJSON,\n DataOfferCreateRequestFromJSON,\n DataOfferCreateRequestToJSON,\n IdAvailabilityResponseFromJSON,\n IdAvailabilityResponseToJSON,\n IdResponseDtoFromJSON,\n IdResponseDtoToJSON,\n InitiateCustomTransferRequestFromJSON,\n InitiateCustomTransferRequestToJSON,\n InitiateTransferRequestFromJSON,\n InitiateTransferRequestToJSON,\n PolicyDefinitionCreateDtoFromJSON,\n PolicyDefinitionCreateDtoToJSON,\n PolicyDefinitionCreateRequestFromJSON,\n PolicyDefinitionCreateRequestToJSON,\n PolicyDefinitionPageFromJSON,\n PolicyDefinitionPageToJSON,\n TransferHistoryPageFromJSON,\n TransferHistoryPageToJSON,\n UiAssetCreateRequestFromJSON,\n UiAssetCreateRequestToJSON,\n UiAssetEditRequestFromJSON,\n UiAssetEditRequestToJSON,\n UiAssetFromJSON,\n UiAssetToJSON,\n UiConfigFromJSON,\n UiConfigToJSON,\n UiContractNegotiationFromJSON,\n UiContractNegotiationToJSON,\n UiDataOfferFromJSON,\n UiDataOfferToJSON,\n UiInitiateTransferRequestFromJSON,\n UiInitiateTransferRequestToJSON,\n VaultSecretCreateSubmitFromJSON,\n VaultSecretCreateSubmitToJSON,\n VaultSecretEditPageFromJSON,\n VaultSecretEditPageToJSON,\n VaultSecretEditSubmitFromJSON,\n VaultSecretEditSubmitToJSON,\n VaultSecretListPageEntryFromJSON,\n VaultSecretListPageEntryToJSON,\n VaultSecretQueryFromJSON,\n VaultSecretQueryToJSON,\n} from '../models/index';\nimport * as runtime from '../runtime';\n\nexport interface AssetDetailsPageRequest {\n assetId: string;\n}\n\nexport interface AssetListPageRequest {\n assetListPageFilter?: AssetListPageFilter;\n}\n\nexport interface BusinessPartnerGroupCreateSubmitRequest {\n businessPartnerGroupCreateSubmit?: BusinessPartnerGroupCreateSubmit;\n}\n\nexport interface BusinessPartnerGroupEditPageRequest {\n id: string;\n}\n\nexport interface BusinessPartnerGroupEditSubmitRequest {\n id: string;\n businessPartnerGroupEditSubmit?: BusinessPartnerGroupEditSubmit;\n}\n\nexport interface BusinessPartnerGroupListPageRequest {\n businessPartnerGroupQuery?: BusinessPartnerGroupQuery;\n}\n\nexport interface CreateAssetRequest {\n uiAssetCreateRequest?: UiAssetCreateRequest;\n}\n\nexport interface CreateContractDefinitionRequest {\n contractDefinitionRequest?: ContractDefinitionRequest;\n}\n\nexport interface CreateDataOfferRequest {\n dataOfferCreateRequest?: DataOfferCreateRequest;\n}\n\nexport interface CreatePolicyDefinitionRequest {\n policyDefinitionCreateRequest?: PolicyDefinitionCreateRequest;\n}\n\nexport interface CreatePolicyDefinitionV2Request {\n policyDefinitionCreateDto?: PolicyDefinitionCreateDto;\n}\n\nexport interface CreateVaultSecretRequest {\n vaultSecretCreateSubmit?: VaultSecretCreateSubmit;\n}\n\nexport interface DeleteAssetRequest {\n assetId: string;\n}\n\nexport interface DeleteBusinessPartnerGroupRequest {\n id: string;\n}\n\nexport interface DeleteContractDefinitionRequest {\n contractDefinitionId: string;\n}\n\nexport interface DeletePolicyDefinitionRequest {\n policyId: string;\n}\n\nexport interface DeleteVaultSecretRequest {\n key: string;\n}\n\nexport interface EditAssetRequest {\n assetId: string;\n uiAssetEditRequest?: UiAssetEditRequest;\n}\n\nexport interface EditVaultSecretRequest {\n key: string;\n vaultSecretEditSubmit?: VaultSecretEditSubmit;\n}\n\nexport interface EditVaultSecretPageRequest {\n key: string;\n}\n\nexport interface GetCatalogPageDataOfferRequest {\n dataOfferId: string;\n participantId?: string;\n connectorEndpoint?: string;\n}\n\nexport interface GetCatalogPageDataOffersRequest {\n participantId?: string;\n connectorEndpoint?: string;\n}\n\nexport interface GetContractAgreementCardRequest {\n contractAgreementId: string;\n}\n\nexport interface GetContractAgreementPageRequest {\n contractAgreementPageQuery?: ContractAgreementPageQuery;\n}\n\nexport interface GetContractNegotiationRequest {\n contractNegotiationId: string;\n}\n\nexport interface GetTransferProcessAssetRequest {\n transferProcessId: string;\n}\n\nexport interface InitiateContractNegotiationRequest {\n contractNegotiationRequest?: ContractNegotiationRequest;\n}\n\nexport interface InitiateCustomTransferOperationRequest {\n initiateCustomTransferRequest?: InitiateCustomTransferRequest;\n}\n\nexport interface InitiateTransferOperationRequest {\n initiateTransferRequest?: InitiateTransferRequest;\n}\n\nexport interface InitiateTransferV2Request {\n uiInitiateTransferRequest?: UiInitiateTransferRequest;\n}\n\nexport interface IsAssetIdAvailableRequest {\n assetId: string;\n}\n\nexport interface IsContractDefinitionIdAvailableRequest {\n contractDefinitionId: string;\n}\n\nexport interface IsPolicyIdAvailableRequest {\n policyId: string;\n}\n\nexport interface ListVaultSecretsPageRequest {\n vaultSecretQuery?: VaultSecretQuery;\n}\n\nexport interface TerminateContractAgreementRequest {\n contractAgreementId: string;\n contractTerminationRequest?: ContractTerminationRequest;\n}\n\n/**\n *\n */\nexport class UIApi extends runtime.BaseAPI {\n /**\n * Get details for a specific Asset\n */\n async assetDetailsPageRaw(\n requestParameters: AssetDetailsPageRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<UiAsset>> {\n if (requestParameters['assetId'] == null) {\n throw new runtime.RequiredError(\n 'assetId',\n 'Required parameter \"assetId\" was null or undefined when calling assetDetailsPage().',\n );\n }\n\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n const response = await this.request(\n {\n path: `/wrapper/ui/pages/asset-page/assets/{assetId}`.replace(\n `{${'assetId'}}`,\n encodeURIComponent(String(requestParameters['assetId'])),\n ),\n method: 'GET',\n headers: headerParameters,\n query: queryParameters,\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n UiAssetFromJSON(jsonValue),\n );\n }\n\n /**\n * Get details for a specific Asset\n */\n async assetDetailsPage(\n requestParameters: AssetDetailsPageRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<UiAsset> {\n const response = await this.assetDetailsPageRaw(\n requestParameters,\n initOverrides,\n );\n return await response.value();\n }\n\n /**\n * Collect all data for Asset Page\n */\n async assetListPageRaw(\n requestParameters: AssetListPageRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<AssetListPage>> {\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n headerParameters['Content-Type'] = 'application/json';\n\n const response = await this.request(\n {\n path: `/wrapper/ui/pages/asset-page`,\n method: 'POST',\n headers: headerParameters,\n query: queryParameters,\n body: AssetListPageFilterToJSON(\n requestParameters['assetListPageFilter'],\n ),\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n AssetListPageFromJSON(jsonValue),\n );\n }\n\n /**\n * Collect all data for Asset Page\n */\n async assetListPage(\n requestParameters: AssetListPageRequest = {},\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<AssetListPage> {\n const response = await this.assetListPageRaw(\n requestParameters,\n initOverrides,\n );\n return await response.value();\n }\n\n /**\n * Get the build version info\n */\n async buildInfoRaw(\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<BuildInfo>> {\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n const response = await this.request(\n {\n path: `/wrapper/ui/build-info`,\n method: 'GET',\n headers: headerParameters,\n query: queryParameters,\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n BuildInfoFromJSON(jsonValue),\n );\n }\n\n /**\n * Get the build version info\n */\n async buildInfo(\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<BuildInfo> {\n const response = await this.buildInfoRaw(initOverrides);\n return await response.value();\n }\n\n /**\n * Create a new Business Partner Group\n */\n async businessPartnerGroupCreateSubmitRaw(\n requestParameters: BusinessPartnerGroupCreateSubmitRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<IdResponseDto>> {\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n headerParameters['Content-Type'] = 'application/json';\n\n const response = await this.request(\n {\n path: `/wrapper/ui/pages/business-partner-groups/create`,\n method: 'POST',\n headers: headerParameters,\n query: queryParameters,\n body: BusinessPartnerGroupCreateSubmitToJSON(\n requestParameters['businessPartnerGroupCreateSubmit'],\n ),\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n IdResponseDtoFromJSON(jsonValue),\n );\n }\n\n /**\n * Create a new Business Partner Group\n */\n async businessPartnerGroupCreateSubmit(\n requestParameters: BusinessPartnerGroupCreateSubmitRequest = {},\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<IdResponseDto> {\n const response = await this.businessPartnerGroupCreateSubmitRaw(\n requestParameters,\n initOverrides,\n );\n return await response.value();\n }\n\n /**\n * Collect all data for the Business Partner Group Edit Page\n */\n async businessPartnerGroupEditPageRaw(\n requestParameters: BusinessPartnerGroupEditPageRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<BusinessPartnerGroupEditPage>> {\n if (requestParameters['id'] == null) {\n throw new runtime.RequiredError(\n 'id',\n 'Required parameter \"id\" was null or undefined when calling businessPartnerGroupEditPage().',\n );\n }\n\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n const response = await this.request(\n {\n path: `/wrapper/ui/pages/business-partner-groups/{id}/edit-page`.replace(\n `{${'id'}}`,\n encodeURIComponent(String(requestParameters['id'])),\n ),\n method: 'GET',\n headers: headerParameters,\n query: queryParameters,\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n BusinessPartnerGroupEditPageFromJSON(jsonValue),\n );\n }\n\n /**\n * Collect all data for the Business Partner Group Edit Page\n */\n async businessPartnerGroupEditPage(\n requestParameters: BusinessPartnerGroupEditPageRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<BusinessPartnerGroupEditPage> {\n const response = await this.businessPartnerGroupEditPageRaw(\n requestParameters,\n initOverrides,\n );\n return await response.value();\n }\n\n /**\n * Edit a Business Partner Group\n */\n async businessPartnerGroupEditSubmitRaw(\n requestParameters: BusinessPartnerGroupEditSubmitRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<IdResponseDto>> {\n if (requestParameters['id'] == null) {\n throw new runtime.RequiredError(\n 'id',\n 'Required parameter \"id\" was null or undefined when calling businessPartnerGroupEditSubmit().',\n );\n }\n\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n headerParameters['Content-Type'] = 'application/json';\n\n const response = await this.request(\n {\n path: `/wrapper/ui/pages/business-partner-groups/{id}/edit-group`.replace(\n `{${'id'}}`,\n encodeURIComponent(String(requestParameters['id'])),\n ),\n method: 'PUT',\n headers: headerParameters,\n query: queryParameters,\n body: BusinessPartnerGroupEditSubmitToJSON(\n requestParameters['businessPartnerGroupEditSubmit'],\n ),\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n IdResponseDtoFromJSON(jsonValue),\n );\n }\n\n /**\n * Edit a Business Partner Group\n */\n async businessPartnerGroupEditSubmit(\n requestParameters: BusinessPartnerGroupEditSubmitRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<IdResponseDto> {\n const response = await this.businessPartnerGroupEditSubmitRaw(\n requestParameters,\n initOverrides,\n );\n return await response.value();\n }\n\n /**\n * Collect all data for the Business Partner Groups List Page\n */\n async businessPartnerGroupListPageRaw(\n requestParameters: BusinessPartnerGroupListPageRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<Array<BusinessPartnerGroupListPageEntry>>> {\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n headerParameters['Content-Type'] = 'application/json';\n\n const response = await this.request(\n {\n path: `/wrapper/ui/pages/business-partner-groups/list-page`,\n method: 'POST',\n headers: headerParameters,\n query: queryParameters,\n body: BusinessPartnerGroupQueryToJSON(\n requestParameters['businessPartnerGroupQuery'],\n ),\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n jsonValue.map(BusinessPartnerGroupListPageEntryFromJSON),\n );\n }\n\n /**\n * Collect all data for the Business Partner Groups List Page\n */\n async businessPartnerGroupListPage(\n requestParameters: BusinessPartnerGroupListPageRequest = {},\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<Array<BusinessPartnerGroupListPageEntry>> {\n const response = await this.businessPartnerGroupListPageRaw(\n requestParameters,\n initOverrides,\n );\n return await response.value();\n }\n\n /**\n * Create a new Asset\n */\n async createAssetRaw(\n requestParameters: CreateAssetRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<IdResponseDto>> {\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n headerParameters['Content-Type'] = 'application/json';\n\n const response = await this.request(\n {\n path: `/wrapper/ui/pages/asset-page/assets`,\n method: 'POST',\n headers: headerParameters,\n query: queryParameters,\n body: UiAssetCreateRequestToJSON(\n requestParameters['uiAssetCreateRequest'],\n ),\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n IdResponseDtoFromJSON(jsonValue),\n );\n }\n\n /**\n * Create a new Asset\n */\n async createAsset(\n requestParameters: CreateAssetRequest = {},\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<IdResponseDto> {\n const response = await this.createAssetRaw(\n requestParameters,\n initOverrides,\n );\n return await response.value();\n }\n\n /**\n * Create a new Contract Definition. Use [publishDataOffer] instead.\n * @deprecated\n */\n async createContractDefinitionRaw(\n requestParameters: CreateContractDefinitionRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<IdResponseDto>> {\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n headerParameters['Content-Type'] = 'application/json';\n\n const response = await this.request(\n {\n path: `/wrapper/ui/pages/contract-definition-page/contract-definitions`,\n method: 'POST',\n headers: headerParameters,\n query: queryParameters,\n body: ContractDefinitionRequestToJSON(\n requestParameters['contractDefinitionRequest'],\n ),\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n IdResponseDtoFromJSON(jsonValue),\n );\n }\n\n /**\n * Create a new Contract Definition. Use [publishDataOffer] instead.\n * @deprecated\n */\n async createContractDefinition(\n requestParameters: CreateContractDefinitionRequest = {},\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<IdResponseDto> {\n const response = await this.createContractDefinitionRaw(\n requestParameters,\n initOverrides,\n );\n return await response.value();\n }\n\n /**\n * Create a new asset, contract definition and optional policies. Uses the same id for the asset, the contract policy, the access policy and the contract definition\n */\n async createDataOfferRaw(\n requestParameters: CreateDataOfferRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<IdResponseDto>> {\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n headerParameters['Content-Type'] = 'application/json';\n\n const response = await this.request(\n {\n path: `/wrapper/ui/pages/create-data-offer`,\n method: 'POST',\n headers: headerParameters,\n query: queryParameters,\n body: DataOfferCreateRequestToJSON(\n requestParameters['dataOfferCreateRequest'],\n ),\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n IdResponseDtoFromJSON(jsonValue),\n );\n }\n\n /**\n * Create a new asset, contract definition and optional policies. Uses the same id for the asset, the contract policy, the access policy and the contract definition\n */\n async createDataOffer(\n requestParameters: CreateDataOfferRequest = {},\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<IdResponseDto> {\n const response = await this.createDataOfferRaw(\n requestParameters,\n initOverrides,\n );\n return await response.value();\n }\n\n /**\n * [Deprecated] Create a new Policy Definition from a list of constraints. Use createPolicyDefinitionV2 instead.\n * @deprecated\n */\n async createPolicyDefinitionRaw(\n requestParameters: CreatePolicyDefinitionRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<IdResponseDto>> {\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n headerParameters['Content-Type'] = 'application/json';\n\n const response = await this.request(\n {\n path: `/wrapper/ui/pages/policy-page/policy-definitions`,\n method: 'POST',\n headers: headerParameters,\n query: queryParameters,\n body: PolicyDefinitionCreateRequestToJSON(\n requestParameters['policyDefinitionCreateRequest'],\n ),\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n IdResponseDtoFromJSON(jsonValue),\n );\n }\n\n /**\n * [Deprecated] Create a new Policy Definition from a list of constraints. Use createPolicyDefinitionV2 instead.\n * @deprecated\n */\n async createPolicyDefinition(\n requestParameters: CreatePolicyDefinitionRequest = {},\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<IdResponseDto> {\n const response = await this.createPolicyDefinitionRaw(\n requestParameters,\n initOverrides,\n );\n return await response.value();\n }\n\n /**\n * Create a new Policy Definition\n */\n async createPolicyDefinitionV2Raw(\n requestParameters: CreatePolicyDefinitionV2Request,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<IdResponseDto>> {\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n headerParameters['Content-Type'] = 'application/json';\n\n const response = await this.request(\n {\n path: `/wrapper/ui/v2/pages/policy-page/policy-definitions`,\n method: 'POST',\n headers: headerParameters,\n query: queryParameters,\n body: PolicyDefinitionCreateDtoToJSON(\n requestParameters['policyDefinitionCreateDto'],\n ),\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n IdResponseDtoFromJSON(jsonValue),\n );\n }\n\n /**\n * Create a new Policy Definition\n */\n async createPolicyDefinitionV2(\n requestParameters: CreatePolicyDefinitionV2Request = {},\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<IdResponseDto> {\n const response = await this.createPolicyDefinitionV2Raw(\n requestParameters,\n initOverrides,\n );\n return await response.value();\n }\n\n /**\n * Create a new Vault Secret\n */\n async createVaultSecretRaw(\n requestParameters: CreateVaultSecretRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<IdResponseDto>> {\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n headerParameters['Content-Type'] = 'application/json';\n\n const response = await this.request(\n {\n path: `/wrapper/ui/pages/vault-secrets/create-secret`,\n method: 'POST',\n headers: headerParameters,\n query: queryParameters,\n body: VaultSecretCreateSubmitToJSON(\n requestParameters['vaultSecretCreateSubmit'],\n ),\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n IdResponseDtoFromJSON(jsonValue),\n );\n }\n\n /**\n * Create a new Vault Secret\n */\n async createVaultSecret(\n requestParameters: CreateVaultSecretRequest = {},\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<IdResponseDto> {\n const response = await this.createVaultSecretRaw(\n requestParameters,\n initOverrides,\n );\n return await response.value();\n }\n\n /**\n * Delete an Asset\n */\n async deleteAssetRaw(\n requestParameters: DeleteAssetRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<IdResponseDto>> {\n if (requestParameters['assetId'] == null) {\n throw new runtime.RequiredError(\n 'assetId',\n 'Required parameter \"assetId\" was null or undefined when calling deleteAsset().',\n );\n }\n\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n const response = await this.request(\n {\n path: `/wrapper/ui/pages/asset-page/assets/{assetId}`.replace(\n `{${'assetId'}}`,\n encodeURIComponent(String(requestParameters['assetId'])),\n ),\n method: 'DELETE',\n headers: headerParameters,\n query: queryParameters,\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n IdResponseDtoFromJSON(jsonValue),\n );\n }\n\n /**\n * Delete an Asset\n */\n async deleteAsset(\n requestParameters: DeleteAssetRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<IdResponseDto> {\n const response = await this.deleteAssetRaw(\n requestParameters,\n initOverrides,\n );\n return await response.value();\n }\n\n /**\n * Delete a Business Partner Group\n */\n async deleteBusinessPartnerGroupRaw(\n requestParameters: DeleteBusinessPartnerGroupRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<IdResponseDto>> {\n if (requestParameters['id'] == null) {\n throw new runtime.RequiredError(\n 'id',\n 'Required parameter \"id\" was null or undefined when calling deleteBusinessPartnerGroup().',\n );\n }\n\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n const response = await this.request(\n {\n path: `/wrapper/ui/pages/business-partner-groups/{id}`.replace(\n `{${'id'}}`,\n encodeURIComponent(String(requestParameters['id'])),\n ),\n method: 'DELETE',\n headers: headerParameters,\n query: queryParameters,\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n IdResponseDtoFromJSON(jsonValue),\n );\n }\n\n /**\n * Delete a Business Partner Group\n */\n async deleteBusinessPartnerGroup(\n requestParameters: DeleteBusinessPartnerGroupRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<IdResponseDto> {\n const response = await this.deleteBusinessPartnerGroupRaw(\n requestParameters,\n initOverrides,\n );\n return await response.value();\n }\n\n /**\n * Delete a Contract Definition\n */\n async deleteContractDefinitionRaw(\n requestParameters: DeleteContractDefinitionRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<IdResponseDto>> {\n if (requestParameters['contractDefinitionId'] == null) {\n throw new runtime.RequiredError(\n 'contractDefinitionId',\n 'Required parameter \"contractDefinitionId\" was null or undefined when calling deleteContractDefinition().',\n );\n }\n\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n const response = await this.request(\n {\n path: `/wrapper/ui/pages/contract-definition-page/contract-definitions/{contractDefinitionId}`.replace(\n `{${'contractDefinitionId'}}`,\n encodeURIComponent(\n String(requestParameters['contractDefinitionId']),\n ),\n ),\n method: 'DELETE',\n headers: headerParameters,\n query: queryParameters,\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n IdResponseDtoFromJSON(jsonValue),\n );\n }\n\n /**\n * Delete a Contract Definition\n */\n async deleteContractDefinition(\n requestParameters: DeleteContractDefinitionRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<IdResponseDto> {\n const response = await this.deleteContractDefinitionRaw(\n requestParameters,\n initOverrides,\n );\n return await response.value();\n }\n\n /**\n * Delete a Policy Definition\n */\n async deletePolicyDefinitionRaw(\n requestParameters: DeletePolicyDefinitionRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<IdResponseDto>> {\n if (requestParameters['policyId'] == null) {\n throw new runtime.RequiredError(\n 'policyId',\n 'Required parameter \"policyId\" was null or undefined when calling deletePolicyDefinition().',\n );\n }\n\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n const response = await this.request(\n {\n path: `/wrapper/ui/pages/policy-page/policy-definitions/{policyId}`.replace(\n `{${'policyId'}}`,\n encodeURIComponent(String(requestParameters['policyId'])),\n ),\n method: 'DELETE',\n headers: headerParameters,\n query: queryParameters,\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n IdResponseDtoFromJSON(jsonValue),\n );\n }\n\n /**\n * Delete a Policy Definition\n */\n async deletePolicyDefinition(\n requestParameters: DeletePolicyDefinitionRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<IdResponseDto> {\n const response = await this.deletePolicyDefinitionRaw(\n requestParameters,\n initOverrides,\n );\n return await response.value();\n }\n\n /**\n * Delete a vault secret\n */\n async deleteVaultSecretRaw(\n requestParameters: DeleteVaultSecretRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<IdResponseDto>> {\n if (requestParameters['key'] == null) {\n throw new runtime.RequiredError(\n 'key',\n 'Required parameter \"key\" was null or undefined when calling deleteVaultSecret().',\n );\n }\n\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n const response = await this.request(\n {\n path: `/wrapper/ui/pages/vault-secrets/{key}`.replace(\n `{${'key'}}`,\n encodeURIComponent(String(requestParameters['key'])),\n ),\n method: 'DELETE',\n headers: headerParameters,\n query: queryParameters,\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n IdResponseDtoFromJSON(jsonValue),\n );\n }\n\n /**\n * Delete a vault secret\n */\n async deleteVaultSecret(\n requestParameters: DeleteVaultSecretRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<IdResponseDto> {\n const response = await this.deleteVaultSecretRaw(\n requestParameters,\n initOverrides,\n );\n return await response.value();\n }\n\n /**\n * Updates an Asset\\'s metadata and optionally also the data source.\n */\n async editAssetRaw(\n requestParameters: EditAssetRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<IdResponseDto>> {\n if (requestParameters['assetId'] == null) {\n throw new runtime.RequiredError(\n 'assetId',\n 'Required parameter \"assetId\" was null or undefined when calling editAsset().',\n );\n }\n\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n headerParameters['Content-Type'] = 'application/json';\n\n const response = await this.request(\n {\n path: `/wrapper/ui/pages/asset-page/assets/{assetId}`.replace(\n `{${'assetId'}}`,\n encodeURIComponent(String(requestParameters['assetId'])),\n ),\n method: 'PUT',\n headers: headerParameters,\n query: queryParameters,\n body: UiAssetEditRequestToJSON(\n requestParameters['uiAssetEditRequest'],\n ),\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n IdResponseDtoFromJSON(jsonValue),\n );\n }\n\n /**\n * Updates an Asset\\'s metadata and optionally also the data source.\n */\n async editAsset(\n requestParameters: EditAssetRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<IdResponseDto> {\n const response = await this.editAssetRaw(\n requestParameters,\n initOverrides,\n );\n return await response.value();\n }\n\n /**\n * Edit an existing vault secret\n */\n async editVaultSecretRaw(\n requestParameters: EditVaultSecretRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<IdResponseDto>> {\n if (requestParameters['key'] == null) {\n throw new runtime.RequiredError(\n 'key',\n 'Required parameter \"key\" was null or undefined when calling editVaultSecret().',\n );\n }\n\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n headerParameters['Content-Type'] = 'application/json';\n\n const response = await this.request(\n {\n path: `/wrapper/ui/pages/vault-secrets/{key}/edit-secret`.replace(\n `{${'key'}}`,\n encodeURIComponent(String(requestParameters['key'])),\n ),\n method: 'PUT',\n headers: headerParameters,\n query: queryParameters,\n body: VaultSecretEditSubmitToJSON(\n requestParameters['vaultSecretEditSubmit'],\n ),\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n IdResponseDtoFromJSON(jsonValue),\n );\n }\n\n /**\n * Edit an existing vault secret\n */\n async editVaultSecret(\n requestParameters: EditVaultSecretRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<IdResponseDto> {\n const response = await this.editVaultSecretRaw(\n requestParameters,\n initOverrides,\n );\n return await response.value();\n }\n\n /**\n * Collect all data for the Edit Vault Secret Page\n */\n async editVaultSecretPageRaw(\n requestParameters: EditVaultSecretPageRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<VaultSecretEditPage>> {\n if (requestParameters['key'] == null) {\n throw new runtime.RequiredError(\n 'key',\n 'Required parameter \"key\" was null or undefined when calling editVaultSecretPage().',\n );\n }\n\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n const response = await this.request(\n {\n path: `/wrapper/ui/pages/vault-secrets/{key}/edit-secret`.replace(\n `{${'key'}}`,\n encodeURIComponent(String(requestParameters['key'])),\n ),\n method: 'GET',\n headers: headerParameters,\n query: queryParameters,\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n VaultSecretEditPageFromJSON(jsonValue),\n );\n }\n\n /**\n * Collect all data for the Edit Vault Secret Page\n */\n async editVaultSecretPage(\n requestParameters: EditVaultSecretPageRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<VaultSecretEditPage> {\n const response = await this.editVaultSecretPageRaw(\n requestParameters,\n initOverrides,\n );\n return await response.value();\n }\n\n /**\n * Fetch a specific data offer from a connector\n */\n async getCatalogPageDataOfferRaw(\n requestParameters: GetCatalogPageDataOfferRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<UiDataOffer>> {\n if (requestParameters['dataOfferId'] == null) {\n throw new runtime.RequiredError(\n 'dataOfferId',\n 'Required parameter \"dataOfferId\" was null or undefined when calling getCatalogPageDataOffer().',\n );\n }\n\n const queryParameters: any = {};\n\n if (requestParameters['participantId'] != null) {\n queryParameters['participantId'] =\n requestParameters['participantId'];\n }\n\n if (requestParameters['connectorEndpoint'] != null) {\n queryParameters['connectorEndpoint'] =\n requestParameters['connectorEndpoint'];\n }\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n const response = await this.request(\n {\n path: `/wrapper/ui/pages/catalog-page/data-offers/{dataOfferId}`.replace(\n `{${'dataOfferId'}}`,\n encodeURIComponent(\n String(requestParameters['dataOfferId']),\n ),\n ),\n method: 'GET',\n headers: headerParameters,\n query: queryParameters,\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n UiDataOfferFromJSON(jsonValue),\n );\n }\n\n /**\n * Fetch a specific data offer from a connector\n */\n async getCatalogPageDataOffer(\n requestParameters: GetCatalogPageDataOfferRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<UiDataOffer> {\n const response = await this.getCatalogPageDataOfferRaw(\n requestParameters,\n initOverrides,\n );\n return await response.value();\n }\n\n /**\n * Fetch a connector\\'s data offers\n */\n async getCatalogPageDataOffersRaw(\n requestParameters: GetCatalogPageDataOffersRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<Array<UiDataOffer>>> {\n const queryParameters: any = {};\n\n if (requestParameters['participantId'] != null) {\n queryParameters['participantId'] =\n requestParameters['participantId'];\n }\n\n if (requestParameters['connectorEndpoint'] != null) {\n queryParameters['connectorEndpoint'] =\n requestParameters['connectorEndpoint'];\n }\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n const response = await this.request(\n {\n path: `/wrapper/ui/pages/catalog-page/data-offers`,\n method: 'GET',\n headers: headerParameters,\n query: queryParameters,\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n jsonValue.map(UiDataOfferFromJSON),\n );\n }\n\n /**\n * Fetch a connector\\'s data offers\n */\n async getCatalogPageDataOffers(\n requestParameters: GetCatalogPageDataOffersRequest = {},\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<Array<UiDataOffer>> {\n const response = await this.getCatalogPageDataOffersRaw(\n requestParameters,\n initOverrides,\n );\n return await response.value();\n }\n\n /**\n * Get a single contract agreement card by its identifier\n */\n async getContractAgreementCardRaw(\n requestParameters: GetContractAgreementCardRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<ContractAgreementCard>> {\n if (requestParameters['contractAgreementId'] == null) {\n throw new runtime.RequiredError(\n 'contractAgreementId',\n 'Required parameter \"contractAgreementId\" was null or undefined when calling getContractAgreementCard().',\n );\n }\n\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n const response = await this.request(\n {\n path: `/wrapper/ui/pages/contract-agreement-page/{contractAgreementId}`.replace(\n `{${'contractAgreementId'}}`,\n encodeURIComponent(\n String(requestParameters['contractAgreementId']),\n ),\n ),\n method: 'GET',\n headers: headerParameters,\n query: queryParameters,\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n ContractAgreementCardFromJSON(jsonValue),\n );\n }\n\n /**\n * Get a single contract agreement card by its identifier\n */\n async getContractAgreementCard(\n requestParameters: GetContractAgreementCardRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<ContractAgreementCard> {\n const response = await this.getContractAgreementCardRaw(\n requestParameters,\n initOverrides,\n );\n return await response.value();\n }\n\n /**\n * Collect filtered data for the Contract Agreement Page\n */\n async getContractAgreementPageRaw(\n requestParameters: GetContractAgreementPageRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<ContractAgreementPage>> {\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n headerParameters['Content-Type'] = 'application/json';\n\n const response = await this.request(\n {\n path: `/wrapper/ui/pages/contract-agreement-page`,\n method: 'POST',\n headers: headerParameters,\n query: queryParameters,\n body: ContractAgreementPageQueryToJSON(\n requestParameters['contractAgreementPageQuery'],\n ),\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n ContractAgreementPageFromJSON(jsonValue),\n );\n }\n\n /**\n * Collect filtered data for the Contract Agreement Page\n */\n async getContractAgreementPage(\n requestParameters: GetContractAgreementPageRequest = {},\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<ContractAgreementPage> {\n const response = await this.getContractAgreementPageRaw(\n requestParameters,\n initOverrides,\n );\n return await response.value();\n }\n\n /**\n * Collect all data for Contract Definition Page\n * @deprecated\n */\n async getContractDefinitionPageRaw(\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<ContractDefinitionPage>> {\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n const response = await this.request(\n {\n path: `/wrapper/ui/pages/contract-definition-page`,\n method: 'GET',\n headers: headerParameters,\n query: queryParameters,\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n ContractDefinitionPageFromJSON(jsonValue),\n );\n }\n\n /**\n * Collect all data for Contract Definition Page\n * @deprecated\n */\n async getContractDefinitionPage(\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<ContractDefinitionPage> {\n const response = await this.getContractDefinitionPageRaw(initOverrides);\n return await response.value();\n }\n\n /**\n * Get Contract Negotiation Information\n */\n async getContractNegotiationRaw(\n requestParameters: GetContractNegotiationRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<UiContractNegotiation>> {\n if (requestParameters['contractNegotiationId'] == null) {\n throw new runtime.RequiredError(\n 'contractNegotiationId',\n 'Required parameter \"contractNegotiationId\" was null or undefined when calling getContractNegotiation().',\n );\n }\n\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n const response = await this.request(\n {\n path: `/wrapper/ui/pages/catalog-page/contract-negotiations/{contractNegotiationId}`.replace(\n `{${'contractNegotiationId'}}`,\n encodeURIComponent(\n String(requestParameters['contractNegotiationId']),\n ),\n ),\n method: 'GET',\n headers: headerParameters,\n query: queryParameters,\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n UiContractNegotiationFromJSON(jsonValue),\n );\n }\n\n /**\n * Get Contract Negotiation Information\n */\n async getContractNegotiation(\n requestParameters: GetContractNegotiationRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<UiContractNegotiation> {\n const response = await this.getContractNegotiationRaw(\n requestParameters,\n initOverrides,\n );\n return await response.value();\n }\n\n /**\n * Collect all data for the Dashboard Page\n */\n async getDashboardPageRaw(\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<DashboardPage>> {\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n const response = await this.request(\n {\n path: `/wrapper/ui/pages/dashboard-page`,\n method: 'GET',\n headers: headerParameters,\n query: queryParameters,\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n DashboardPageFromJSON(jsonValue),\n );\n }\n\n /**\n * Collect all data for the Dashboard Page\n */\n async getDashboardPage(\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<DashboardPage> {\n const response = await this.getDashboardPageRaw(initOverrides);\n return await response.value();\n }\n\n /**\n * Collect all data for Policy Definition Page\n */\n async getPolicyDefinitionPageRaw(\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<PolicyDefinitionPage>> {\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n const response = await this.request(\n {\n path: `/wrapper/ui/pages/policy-page`,\n method: 'GET',\n headers: headerParameters,\n query: queryParameters,\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n PolicyDefinitionPageFromJSON(jsonValue),\n );\n }\n\n /**\n * Collect all data for Policy Definition Page\n */\n async getPolicyDefinitionPage(\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<PolicyDefinitionPage> {\n const response = await this.getPolicyDefinitionPageRaw(initOverrides);\n return await response.value();\n }\n\n /**\n * Collect all data for the Transfer History Page\n */\n async getTransferHistoryPageRaw(\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<TransferHistoryPage>> {\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n const response = await this.request(\n {\n path: `/wrapper/ui/pages/transfer-history-page`,\n method: 'GET',\n headers: headerParameters,\n query: queryParameters,\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n TransferHistoryPageFromJSON(jsonValue),\n );\n }\n\n /**\n * Collect all data for the Transfer History Page\n */\n async getTransferHistoryPage(\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<TransferHistoryPage> {\n const response = await this.getTransferHistoryPageRaw(initOverrides);\n return await response.value();\n }\n\n /**\n * Queries a transfer process\\' asset\n */\n async getTransferProcessAssetRaw(\n requestParameters: GetTransferProcessAssetRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<UiAsset>> {\n if (requestParameters['transferProcessId'] == null) {\n throw new runtime.RequiredError(\n 'transferProcessId',\n 'Required parameter \"transferProcessId\" was null or undefined when calling getTransferProcessAsset().',\n );\n }\n\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n const response = await this.request(\n {\n path: `/wrapper/ui/pages/transfer-history-page/transfer-processes/{transferProcessId}/asset`.replace(\n `{${'transferProcessId'}}`,\n encodeURIComponent(\n String(requestParameters['transferProcessId']),\n ),\n ),\n method: 'GET',\n headers: headerParameters,\n query: queryParameters,\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n UiAssetFromJSON(jsonValue),\n );\n }\n\n /**\n * Queries a transfer process\\' asset\n */\n async getTransferProcessAsset(\n requestParameters: GetTransferProcessAssetRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<UiAsset> {\n const response = await this.getTransferProcessAssetRaw(\n requestParameters,\n initOverrides,\n );\n return await response.value();\n }\n\n /**\n * Initiate a new Contract Negotiation\n */\n async initiateContractNegotiationRaw(\n requestParameters: InitiateContractNegotiationRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<UiContractNegotiation>> {\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n headerParameters['Content-Type'] = 'application/json';\n\n const response = await this.request(\n {\n path: `/wrapper/ui/pages/catalog-page/contract-negotiations`,\n method: 'POST',\n headers: headerParameters,\n query: queryParameters,\n body: ContractNegotiationRequestToJSON(\n requestParameters['contractNegotiationRequest'],\n ),\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n UiContractNegotiationFromJSON(jsonValue),\n );\n }\n\n /**\n * Initiate a new Contract Negotiation\n */\n async initiateContractNegotiation(\n requestParameters: InitiateContractNegotiationRequest = {},\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<UiContractNegotiation> {\n const response = await this.initiateContractNegotiationRaw(\n requestParameters,\n initOverrides,\n );\n return await response.value();\n }\n\n /**\n * Initiate a Transfer Process via a custom Transfer Process JSON-LD. Fields such as connectorId, assetId, providerConnectorId, providerConnectorAddress will be set automatically.\n */\n async initiateCustomTransferRaw(\n requestParameters: InitiateCustomTransferOperationRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<IdResponseDto>> {\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n headerParameters['Content-Type'] = 'application/json';\n\n const response = await this.request(\n {\n path: `/wrapper/ui/pages/contract-agreement-page/transfers/custom`,\n method: 'POST',\n headers: headerParameters,\n query: queryParameters,\n body: InitiateCustomTransferRequestToJSON(\n requestParameters['initiateCustomTransferRequest'],\n ),\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n IdResponseDtoFromJSON(jsonValue),\n );\n }\n\n /**\n * Initiate a Transfer Process via a custom Transfer Process JSON-LD. Fields such as connectorId, assetId, providerConnectorId, providerConnectorAddress will be set automatically.\n */\n async initiateCustomTransfer(\n requestParameters: InitiateCustomTransferOperationRequest = {},\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<IdResponseDto> {\n const response = await this.initiateCustomTransferRaw(\n requestParameters,\n initOverrides,\n );\n return await response.value();\n }\n\n /**\n * Initiate a Transfer Process. Deprecated. Use initiateTransferV2 instead\n * @deprecated\n */\n async initiateTransferRaw(\n requestParameters: InitiateTransferOperationRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<IdResponseDto>> {\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n headerParameters['Content-Type'] = 'application/json';\n\n const response = await this.request(\n {\n path: `/wrapper/ui/pages/contract-agreement-page/transfers`,\n method: 'POST',\n headers: headerParameters,\n query: queryParameters,\n body: InitiateTransferRequestToJSON(\n requestParameters['initiateTransferRequest'],\n ),\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n IdResponseDtoFromJSON(jsonValue),\n );\n }\n\n /**\n * Initiate a Transfer Process. Deprecated. Use initiateTransferV2 instead\n * @deprecated\n */\n async initiateTransfer(\n requestParameters: InitiateTransferOperationRequest = {},\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<IdResponseDto> {\n const response = await this.initiateTransferRaw(\n requestParameters,\n initOverrides,\n );\n return await response.value();\n }\n\n /**\n * Initiate a Transfer Process. V2 Endpoint with support for Callback Addresses and well-typed data sinks\n */\n async initiateTransferV2Raw(\n requestParameters: InitiateTransferV2Request,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<IdResponseDto>> {\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n headerParameters['Content-Type'] = 'application/json';\n\n const response = await this.request(\n {\n path: `/wrapper/ui/pages/contract-agreement-page/initiate-transfer-v2`,\n method: 'POST',\n headers: headerParameters,\n query: queryParameters,\n body: UiInitiateTransferRequestToJSON(\n requestParameters['uiInitiateTransferRequest'],\n ),\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n IdResponseDtoFromJSON(jsonValue),\n );\n }\n\n /**\n * Initiate a Transfer Process. V2 Endpoint with support for Callback Addresses and well-typed data sinks\n */\n async initiateTransferV2(\n requestParameters: InitiateTransferV2Request = {},\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<IdResponseDto> {\n const response = await this.initiateTransferV2Raw(\n requestParameters,\n initOverrides,\n );\n return await response.value();\n }\n\n /**\n * Validates if the provided assetId is already taken\n */\n async isAssetIdAvailableRaw(\n requestParameters: IsAssetIdAvailableRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<IdAvailabilityResponse>> {\n if (requestParameters['assetId'] == null) {\n throw new runtime.RequiredError(\n 'assetId',\n 'Required parameter \"assetId\" was null or undefined when calling isAssetIdAvailable().',\n );\n }\n\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n const response = await this.request(\n {\n path: `/wrapper/ui/pages/data-offer-page/validate-asset-id/{assetId}`.replace(\n `{${'assetId'}}`,\n encodeURIComponent(String(requestParameters['assetId'])),\n ),\n method: 'GET',\n headers: headerParameters,\n query: queryParameters,\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n IdAvailabilityResponseFromJSON(jsonValue),\n );\n }\n\n /**\n * Validates if the provided assetId is already taken\n */\n async isAssetIdAvailable(\n requestParameters: IsAssetIdAvailableRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<IdAvailabilityResponse> {\n const response = await this.isAssetIdAvailableRaw(\n requestParameters,\n initOverrides,\n );\n return await response.value();\n }\n\n /**\n * Validates if the provided contractDefinitionId is already taken\n */\n async isContractDefinitionIdAvailableRaw(\n requestParameters: IsContractDefinitionIdAvailableRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<IdAvailabilityResponse>> {\n if (requestParameters['contractDefinitionId'] == null) {\n throw new runtime.RequiredError(\n 'contractDefinitionId',\n 'Required parameter \"contractDefinitionId\" was null or undefined when calling isContractDefinitionIdAvailable().',\n );\n }\n\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n const response = await this.request(\n {\n path: `/wrapper/ui/pages/data-offer-page/validate-contract-definition-id/{contractDefinitionId}`.replace(\n `{${'contractDefinitionId'}}`,\n encodeURIComponent(\n String(requestParameters['contractDefinitionId']),\n ),\n ),\n method: 'GET',\n headers: headerParameters,\n query: queryParameters,\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n IdAvailabilityResponseFromJSON(jsonValue),\n );\n }\n\n /**\n * Validates if the provided contractDefinitionId is already taken\n */\n async isContractDefinitionIdAvailable(\n requestParameters: IsContractDefinitionIdAvailableRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<IdAvailabilityResponse> {\n const response = await this.isContractDefinitionIdAvailableRaw(\n requestParameters,\n initOverrides,\n );\n return await response.value();\n }\n\n /**\n * Validates if the provided policyId is already taken\n */\n async isPolicyIdAvailableRaw(\n requestParameters: IsPolicyIdAvailableRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<IdAvailabilityResponse>> {\n if (requestParameters['policyId'] == null) {\n throw new runtime.RequiredError(\n 'policyId',\n 'Required parameter \"policyId\" was null or undefined when calling isPolicyIdAvailable().',\n );\n }\n\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n const response = await this.request(\n {\n path: `/wrapper/ui/pages/data-offer-page/validate-policy-id/{policyId}`.replace(\n `{${'policyId'}}`,\n encodeURIComponent(String(requestParameters['policyId'])),\n ),\n method: 'GET',\n headers: headerParameters,\n query: queryParameters,\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n IdAvailabilityResponseFromJSON(jsonValue),\n );\n }\n\n /**\n * Validates if the provided policyId is already taken\n */\n async isPolicyIdAvailable(\n requestParameters: IsPolicyIdAvailableRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<IdAvailabilityResponse> {\n const response = await this.isPolicyIdAvailableRaw(\n requestParameters,\n initOverrides,\n );\n return await response.value();\n }\n\n /**\n * Collect all data for the Vault Secrets List Page\n */\n async listVaultSecretsPageRaw(\n requestParameters: ListVaultSecretsPageRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<Array<VaultSecretListPageEntry>>> {\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n headerParameters['Content-Type'] = 'application/json';\n\n const response = await this.request(\n {\n path: `/wrapper/ui/pages/vault-secrets/list-page`,\n method: 'POST',\n headers: headerParameters,\n query: queryParameters,\n body: VaultSecretQueryToJSON(\n requestParameters['vaultSecretQuery'],\n ),\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n jsonValue.map(VaultSecretListPageEntryFromJSON),\n );\n }\n\n /**\n * Collect all data for the Vault Secrets List Page\n */\n async listVaultSecretsPage(\n requestParameters: ListVaultSecretsPageRequest = {},\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<Array<VaultSecretListPageEntry>> {\n const response = await this.listVaultSecretsPageRaw(\n requestParameters,\n initOverrides,\n );\n return await response.value();\n }\n\n /**\n * Terminates a contract agreement designated by its contract agreement id.\n */\n async terminateContractAgreementRaw(\n requestParameters: TerminateContractAgreementRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<IdResponseDto>> {\n if (requestParameters['contractAgreementId'] == null) {\n throw new runtime.RequiredError(\n 'contractAgreementId',\n 'Required parameter \"contractAgreementId\" was null or undefined when calling terminateContractAgreement().',\n );\n }\n\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n headerParameters['Content-Type'] = 'application/json';\n\n const response = await this.request(\n {\n path: `/wrapper/ui/pages/content-agreement-page/{contractAgreementId}/terminate`.replace(\n `{${'contractAgreementId'}}`,\n encodeURIComponent(\n String(requestParameters['contractAgreementId']),\n ),\n ),\n method: 'POST',\n headers: headerParameters,\n query: queryParameters,\n body: ContractTerminationRequestToJSON(\n requestParameters['contractTerminationRequest'],\n ),\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n IdResponseDtoFromJSON(jsonValue),\n );\n }\n\n /**\n * Terminates a contract agreement designated by its contract agreement id.\n */\n async terminateContractAgreement(\n requestParameters: TerminateContractAgreementRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<IdResponseDto> {\n const response = await this.terminateContractAgreementRaw(\n requestParameters,\n initOverrides,\n );\n return await response.value();\n }\n\n /**\n * Get the UI configuration\n */\n async uiConfigRaw(\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<UiConfig>> {\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n const response = await this.request(\n {\n path: `/wrapper/ui/config`,\n method: 'GET',\n headers: headerParameters,\n query: queryParameters,\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n UiConfigFromJSON(jsonValue),\n );\n }\n\n /**\n * Get the UI configuration\n */\n async uiConfig(\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<UiConfig> {\n const response = await this.uiConfigRaw(initOverrides);\n return await response.value();\n }\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport type {\n CatalogQuery,\n CatalogQueryV2,\n ContractNegotiationStateResult,\n EdrDto,\n IdResponseDto,\n KpiResult,\n NegotiateAllQuery,\n NegotiateAllResult,\n TransferProcessStateResult,\n UiDataOffer,\n} from '../models/index';\nimport {\n CatalogQueryFromJSON,\n CatalogQueryToJSON,\n CatalogQueryV2FromJSON,\n CatalogQueryV2ToJSON,\n ContractNegotiationStateResultFromJSON,\n ContractNegotiationStateResultToJSON,\n EdrDtoFromJSON,\n EdrDtoToJSON,\n IdResponseDtoFromJSON,\n IdResponseDtoToJSON,\n KpiResultFromJSON,\n KpiResultToJSON,\n NegotiateAllQueryFromJSON,\n NegotiateAllQueryToJSON,\n NegotiateAllResultFromJSON,\n NegotiateAllResultToJSON,\n TransferProcessStateResultFromJSON,\n TransferProcessStateResultToJSON,\n UiDataOfferFromJSON,\n UiDataOfferToJSON,\n} from '../models/index';\nimport * as runtime from '../runtime';\n\nexport interface GetContractNegotiationStatesRequest {\n requestBody: Array<string>;\n}\n\nexport interface GetTransferProcessEdrRequest {\n transferId: string;\n}\n\nexport interface GetTransferProcessStatesRequest {\n requestBody: Array<string>;\n}\n\nexport interface NegotiateAllRequest {\n negotiateAllQuery: NegotiateAllQuery;\n}\n\nexport interface QueryCatalogRequest {\n catalogQuery: CatalogQuery;\n}\n\nexport interface QueryCatalogV2Request {\n catalogQueryV2: CatalogQueryV2;\n}\n\nexport interface TerminateTransferProcessRequest {\n transferId: string;\n}\n\n/**\n *\n */\nexport class UseCaseApi extends runtime.BaseAPI {\n /**\n * Fetch contract negotiation states as batch\n */\n async getContractNegotiationStatesRaw(\n requestParameters: GetContractNegotiationStatesRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<Array<ContractNegotiationStateResult>>> {\n if (requestParameters['requestBody'] == null) {\n throw new runtime.RequiredError(\n 'requestBody',\n 'Required parameter \"requestBody\" was null or undefined when calling getContractNegotiationStates().',\n );\n }\n\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n headerParameters['Content-Type'] = 'application/json';\n\n const response = await this.request(\n {\n path: `/wrapper/use-case-api/contract-negotiations/states`,\n method: 'POST',\n headers: headerParameters,\n query: queryParameters,\n body: requestParameters['requestBody'],\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n jsonValue.map(ContractNegotiationStateResultFromJSON),\n );\n }\n\n /**\n * Fetch contract negotiation states as batch\n */\n async getContractNegotiationStates(\n requestParameters: GetContractNegotiationStatesRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<Array<ContractNegotiationStateResult>> {\n const response = await this.getContractNegotiationStatesRaw(\n requestParameters,\n initOverrides,\n );\n return await response.value();\n }\n\n /**\n * Basic KPIs about the running EDC Connector.\n */\n async getKpisRaw(\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<KpiResult>> {\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n const response = await this.request(\n {\n path: `/wrapper/use-case-api/kpis`,\n method: 'GET',\n headers: headerParameters,\n query: queryParameters,\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n KpiResultFromJSON(jsonValue),\n );\n }\n\n /**\n * Basic KPIs about the running EDC Connector.\n */\n async getKpis(\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<KpiResult> {\n const response = await this.getKpisRaw(initOverrides);\n return await response.value();\n }\n\n /**\n * List available functions in policies, prohibitions and obligations.\n */\n async getSupportedFunctionsRaw(\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<Array<string>>> {\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n const response = await this.request(\n {\n path: `/wrapper/use-case-api/supported-policy-functions`,\n method: 'GET',\n headers: headerParameters,\n query: queryParameters,\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse<any>(response);\n }\n\n /**\n * List available functions in policies, prohibitions and obligations.\n */\n async getSupportedFunctions(\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<Array<string>> {\n const response = await this.getSupportedFunctionsRaw(initOverrides);\n return await response.value();\n }\n\n /**\n * Fetch the EDR for a given transfer process. Refreshes EDR if expired. The transfer must have been started as HttpData-PROXY.\n */\n async getTransferProcessEdrRaw(\n requestParameters: GetTransferProcessEdrRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<EdrDto>> {\n if (requestParameters['transferId'] == null) {\n throw new runtime.RequiredError(\n 'transferId',\n 'Required parameter \"transferId\" was null or undefined when calling getTransferProcessEdr().',\n );\n }\n\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n const response = await this.request(\n {\n path: `/wrapper/use-case-api/transfers/{transferId}/edr`.replace(\n `{${'transferId'}}`,\n encodeURIComponent(String(requestParameters['transferId'])),\n ),\n method: 'POST',\n headers: headerParameters,\n query: queryParameters,\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n EdrDtoFromJSON(jsonValue),\n );\n }\n\n /**\n * Fetch the EDR for a given transfer process. Refreshes EDR if expired. The transfer must have been started as HttpData-PROXY.\n */\n async getTransferProcessEdr(\n requestParameters: GetTransferProcessEdrRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<EdrDto> {\n const response = await this.getTransferProcessEdrRaw(\n requestParameters,\n initOverrides,\n );\n return await response.value();\n }\n\n /**\n * Fetch transfer process states as batch\n */\n async getTransferProcessStatesRaw(\n requestParameters: GetTransferProcessStatesRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<Array<TransferProcessStateResult>>> {\n if (requestParameters['requestBody'] == null) {\n throw new runtime.RequiredError(\n 'requestBody',\n 'Required parameter \"requestBody\" was null or undefined when calling getTransferProcessStates().',\n );\n }\n\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n headerParameters['Content-Type'] = 'application/json';\n\n const response = await this.request(\n {\n path: `/wrapper/use-case-api/transfers/states`,\n method: 'POST',\n headers: headerParameters,\n query: queryParameters,\n body: requestParameters['requestBody'],\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n jsonValue.map(TransferProcessStateResultFromJSON),\n );\n }\n\n /**\n * Fetch transfer process states as batch\n */\n async getTransferProcessStates(\n requestParameters: GetTransferProcessStatesRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<Array<TransferProcessStateResult>> {\n const response = await this.getTransferProcessStatesRaw(\n requestParameters,\n initOverrides,\n );\n return await response.value();\n }\n\n /**\n * Negotiate all assets with the given nested asset property filter. Only negotiates assets without active agreements. Returns existing agreements if found.\n */\n async negotiateAllRaw(\n requestParameters: NegotiateAllRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<Array<NegotiateAllResult>>> {\n if (requestParameters['negotiateAllQuery'] == null) {\n throw new runtime.RequiredError(\n 'negotiateAllQuery',\n 'Required parameter \"negotiateAllQuery\" was null or undefined when calling negotiateAll().',\n );\n }\n\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n headerParameters['Content-Type'] = 'application/json';\n\n const response = await this.request(\n {\n path: `/wrapper/use-case-api/negotiations/quick-initiate`,\n method: 'POST',\n headers: headerParameters,\n query: queryParameters,\n body: NegotiateAllQueryToJSON(\n requestParameters['negotiateAllQuery'],\n ),\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n jsonValue.map(NegotiateAllResultFromJSON),\n );\n }\n\n /**\n * Negotiate all assets with the given nested asset property filter. Only negotiates assets without active agreements. Returns existing agreements if found.\n */\n async negotiateAll(\n requestParameters: NegotiateAllRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<Array<NegotiateAllResult>> {\n const response = await this.negotiateAllRaw(\n requestParameters,\n initOverrides,\n );\n return await response.value();\n }\n\n /**\n * Fetch a connector\\'s data offers\n * @deprecated\n */\n async queryCatalogRaw(\n requestParameters: QueryCatalogRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<Array<UiDataOffer>>> {\n if (requestParameters['catalogQuery'] == null) {\n throw new runtime.RequiredError(\n 'catalogQuery',\n 'Required parameter \"catalogQuery\" was null or undefined when calling queryCatalog().',\n );\n }\n\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n headerParameters['Content-Type'] = 'application/json';\n\n const response = await this.request(\n {\n path: `/wrapper/use-case-api/catalog`,\n method: 'POST',\n headers: headerParameters,\n query: queryParameters,\n body: CatalogQueryToJSON(requestParameters['catalogQuery']),\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n jsonValue.map(UiDataOfferFromJSON),\n );\n }\n\n /**\n * Fetch a connector\\'s data offers\n * @deprecated\n */\n async queryCatalog(\n requestParameters: QueryCatalogRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<Array<UiDataOffer>> {\n const response = await this.queryCatalogRaw(\n requestParameters,\n initOverrides,\n );\n return await response.value();\n }\n\n /**\n * Fetch a connector\\'s data offers filtering the catalog by nested asset properties\n */\n async queryCatalogV2Raw(\n requestParameters: QueryCatalogV2Request,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<Array<UiDataOffer>>> {\n if (requestParameters['catalogQueryV2'] == null) {\n throw new runtime.RequiredError(\n 'catalogQueryV2',\n 'Required parameter \"catalogQueryV2\" was null or undefined when calling queryCatalogV2().',\n );\n }\n\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n headerParameters['Content-Type'] = 'application/json';\n\n const response = await this.request(\n {\n path: `/wrapper/use-case-api/catalog-v2`,\n method: 'POST',\n headers: headerParameters,\n query: queryParameters,\n body: CatalogQueryV2ToJSON(requestParameters['catalogQueryV2']),\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n jsonValue.map(UiDataOfferFromJSON),\n );\n }\n\n /**\n * Fetch a connector\\'s data offers filtering the catalog by nested asset properties\n */\n async queryCatalogV2(\n requestParameters: QueryCatalogV2Request,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<Array<UiDataOffer>> {\n const response = await this.queryCatalogV2Raw(\n requestParameters,\n initOverrides,\n );\n return await response.value();\n }\n\n /**\n * Delete the EDR and terminate the given transfer process.\n */\n async terminateTransferProcessRaw(\n requestParameters: TerminateTransferProcessRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<IdResponseDto>> {\n if (requestParameters['transferId'] == null) {\n throw new runtime.RequiredError(\n 'transferId',\n 'Required parameter \"transferId\" was null or undefined when calling terminateTransferProcess().',\n );\n }\n\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n const response = await this.request(\n {\n path: `/wrapper/use-case-api/transfers/{transferId}/terminate`.replace(\n `{${'transferId'}}`,\n encodeURIComponent(String(requestParameters['transferId'])),\n ),\n method: 'POST',\n headers: headerParameters,\n query: queryParameters,\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n IdResponseDtoFromJSON(jsonValue),\n );\n }\n\n /**\n * Delete the EDR and terminate the given transfer process.\n */\n async terminateTransferProcess(\n requestParameters: TerminateTransferProcessRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<IdResponseDto> {\n const response = await this.terminateTransferProcessRaw(\n requestParameters,\n initOverrides,\n );\n return await response.value();\n }\n}\n","var util;\n(function (util) {\n util.assertEqual = (val) => val;\n function assertIs(_arg) { }\n util.assertIs = assertIs;\n function assertNever(_x) {\n throw new Error();\n }\n util.assertNever = assertNever;\n util.arrayToEnum = (items) => {\n const obj = {};\n for (const item of items) {\n obj[item] = item;\n }\n return obj;\n };\n util.getValidEnumValues = (obj) => {\n const validKeys = util.objectKeys(obj).filter((k) => typeof obj[obj[k]] !== \"number\");\n const filtered = {};\n for (const k of validKeys) {\n filtered[k] = obj[k];\n }\n return util.objectValues(filtered);\n };\n util.objectValues = (obj) => {\n return util.objectKeys(obj).map(function (e) {\n return obj[e];\n });\n };\n util.objectKeys = typeof Object.keys === \"function\" // eslint-disable-line ban/ban\n ? (obj) => Object.keys(obj) // eslint-disable-line ban/ban\n : (object) => {\n const keys = [];\n for (const key in object) {\n if (Object.prototype.hasOwnProperty.call(object, key)) {\n keys.push(key);\n }\n }\n return keys;\n };\n util.find = (arr, checker) => {\n for (const item of arr) {\n if (checker(item))\n return item;\n }\n return undefined;\n };\n util.isInteger = typeof Number.isInteger === \"function\"\n ? (val) => Number.isInteger(val) // eslint-disable-line ban/ban\n : (val) => typeof val === \"number\" && isFinite(val) && Math.floor(val) === val;\n function joinValues(array, separator = \" | \") {\n return array\n .map((val) => (typeof val === \"string\" ? `'${val}'` : val))\n .join(separator);\n }\n util.joinValues = joinValues;\n util.jsonStringifyReplacer = (_, value) => {\n if (typeof value === \"bigint\") {\n return value.toString();\n }\n return value;\n };\n})(util || (util = {}));\nvar objectUtil;\n(function (objectUtil) {\n objectUtil.mergeShapes = (first, second) => {\n return {\n ...first,\n ...second, // second overwrites first\n };\n };\n})(objectUtil || (objectUtil = {}));\nconst ZodParsedType = util.arrayToEnum([\n \"string\",\n \"nan\",\n \"number\",\n \"integer\",\n \"float\",\n \"boolean\",\n \"date\",\n \"bigint\",\n \"symbol\",\n \"function\",\n \"undefined\",\n \"null\",\n \"array\",\n \"object\",\n \"unknown\",\n \"promise\",\n \"void\",\n \"never\",\n \"map\",\n \"set\",\n]);\nconst getParsedType = (data) => {\n const t = typeof data;\n switch (t) {\n case \"undefined\":\n return ZodParsedType.undefined;\n case \"string\":\n return ZodParsedType.string;\n case \"number\":\n return isNaN(data) ? ZodParsedType.nan : ZodParsedType.number;\n case \"boolean\":\n return ZodParsedType.boolean;\n case \"function\":\n return ZodParsedType.function;\n case \"bigint\":\n return ZodParsedType.bigint;\n case \"symbol\":\n return ZodParsedType.symbol;\n case \"object\":\n if (Array.isArray(data)) {\n return ZodParsedType.array;\n }\n if (data === null) {\n return ZodParsedType.null;\n }\n if (data.then &&\n typeof data.then === \"function\" &&\n data.catch &&\n typeof data.catch === \"function\") {\n return ZodParsedType.promise;\n }\n if (typeof Map !== \"undefined\" && data instanceof Map) {\n return ZodParsedType.map;\n }\n if (typeof Set !== \"undefined\" && data instanceof Set) {\n return ZodParsedType.set;\n }\n if (typeof Date !== \"undefined\" && data instanceof Date) {\n return ZodParsedType.date;\n }\n return ZodParsedType.object;\n default:\n return ZodParsedType.unknown;\n }\n};\n\nconst ZodIssueCode = util.arrayToEnum([\n \"invalid_type\",\n \"invalid_literal\",\n \"custom\",\n \"invalid_union\",\n \"invalid_union_discriminator\",\n \"invalid_enum_value\",\n \"unrecognized_keys\",\n \"invalid_arguments\",\n \"invalid_return_type\",\n \"invalid_date\",\n \"invalid_string\",\n \"too_small\",\n \"too_big\",\n \"invalid_intersection_types\",\n \"not_multiple_of\",\n \"not_finite\",\n]);\nconst quotelessJson = (obj) => {\n const json = JSON.stringify(obj, null, 2);\n return json.replace(/\"([^\"]+)\":/g, \"$1:\");\n};\nclass ZodError extends Error {\n constructor(issues) {\n super();\n this.issues = [];\n this.addIssue = (sub) => {\n this.issues = [...this.issues, sub];\n };\n this.addIssues = (subs = []) => {\n this.issues = [...this.issues, ...subs];\n };\n const actualProto = new.target.prototype;\n if (Object.setPrototypeOf) {\n // eslint-disable-next-line ban/ban\n Object.setPrototypeOf(this, actualProto);\n }\n else {\n this.__proto__ = actualProto;\n }\n this.name = \"ZodError\";\n this.issues = issues;\n }\n get errors() {\n return this.issues;\n }\n format(_mapper) {\n const mapper = _mapper ||\n function (issue) {\n return issue.message;\n };\n const fieldErrors = { _errors: [] };\n const processError = (error) => {\n for (const issue of error.issues) {\n if (issue.code === \"invalid_union\") {\n issue.unionErrors.map(processError);\n }\n else if (issue.code === \"invalid_return_type\") {\n processError(issue.returnTypeError);\n }\n else if (issue.code === \"invalid_arguments\") {\n processError(issue.argumentsError);\n }\n else if (issue.path.length === 0) {\n fieldErrors._errors.push(mapper(issue));\n }\n else {\n let curr = fieldErrors;\n let i = 0;\n while (i < issue.path.length) {\n const el = issue.path[i];\n const terminal = i === issue.path.length - 1;\n if (!terminal) {\n curr[el] = curr[el] || { _errors: [] };\n // if (typeof el === \"string\") {\n // curr[el] = curr[el] || { _errors: [] };\n // } else if (typeof el === \"number\") {\n // const errorArray: any = [];\n // errorArray._errors = [];\n // curr[el] = curr[el] || errorArray;\n // }\n }\n else {\n curr[el] = curr[el] || { _errors: [] };\n curr[el]._errors.push(mapper(issue));\n }\n curr = curr[el];\n i++;\n }\n }\n }\n };\n processError(this);\n return fieldErrors;\n }\n toString() {\n return this.message;\n }\n get message() {\n return JSON.stringify(this.issues, util.jsonStringifyReplacer, 2);\n }\n get isEmpty() {\n return this.issues.length === 0;\n }\n flatten(mapper = (issue) => issue.message) {\n const fieldErrors = {};\n const formErrors = [];\n for (const sub of this.issues) {\n if (sub.path.length > 0) {\n fieldErrors[sub.path[0]] = fieldErrors[sub.path[0]] || [];\n fieldErrors[sub.path[0]].push(mapper(sub));\n }\n else {\n formErrors.push(mapper(sub));\n }\n }\n return { formErrors, fieldErrors };\n }\n get formErrors() {\n return this.flatten();\n }\n}\nZodError.create = (issues) => {\n const error = new ZodError(issues);\n return error;\n};\n\nconst errorMap = (issue, _ctx) => {\n let message;\n switch (issue.code) {\n case ZodIssueCode.invalid_type:\n if (issue.received === ZodParsedType.undefined) {\n message = \"Required\";\n }\n else {\n message = `Expected ${issue.expected}, received ${issue.received}`;\n }\n break;\n case ZodIssueCode.invalid_literal:\n message = `Invalid literal value, expected ${JSON.stringify(issue.expected, util.jsonStringifyReplacer)}`;\n break;\n case ZodIssueCode.unrecognized_keys:\n message = `Unrecognized key(s) in object: ${util.joinValues(issue.keys, \", \")}`;\n break;\n case ZodIssueCode.invalid_union:\n message = `Invalid input`;\n break;\n case ZodIssueCode.invalid_union_discriminator:\n message = `Invalid discriminator value. Expected ${util.joinValues(issue.options)}`;\n break;\n case ZodIssueCode.invalid_enum_value:\n message = `Invalid enum value. Expected ${util.joinValues(issue.options)}, received '${issue.received}'`;\n break;\n case ZodIssueCode.invalid_arguments:\n message = `Invalid function arguments`;\n break;\n case ZodIssueCode.invalid_return_type:\n message = `Invalid function return type`;\n break;\n case ZodIssueCode.invalid_date:\n message = `Invalid date`;\n break;\n case ZodIssueCode.invalid_string:\n if (typeof issue.validation === \"object\") {\n if (\"includes\" in issue.validation) {\n message = `Invalid input: must include \"${issue.validation.includes}\"`;\n if (typeof issue.validation.position === \"number\") {\n message = `${message} at one or more positions greater than or equal to ${issue.validation.position}`;\n }\n }\n else if (\"startsWith\" in issue.validation) {\n message = `Invalid input: must start with \"${issue.validation.startsWith}\"`;\n }\n else if (\"endsWith\" in issue.validation) {\n message = `Invalid input: must end with \"${issue.validation.endsWith}\"`;\n }\n else {\n util.assertNever(issue.validation);\n }\n }\n else if (issue.validation !== \"regex\") {\n message = `Invalid ${issue.validation}`;\n }\n else {\n message = \"Invalid\";\n }\n break;\n case ZodIssueCode.too_small:\n if (issue.type === \"array\")\n message = `Array must contain ${issue.exact ? \"exactly\" : issue.inclusive ? `at least` : `more than`} ${issue.minimum} element(s)`;\n else if (issue.type === \"string\")\n message = `String must contain ${issue.exact ? \"exactly\" : issue.inclusive ? `at least` : `over`} ${issue.minimum} character(s)`;\n else if (issue.type === \"number\")\n message = `Number must be ${issue.exact\n ? `exactly equal to `\n : issue.inclusive\n ? `greater than or equal to `\n : `greater than `}${issue.minimum}`;\n else if (issue.type === \"date\")\n message = `Date must be ${issue.exact\n ? `exactly equal to `\n : issue.inclusive\n ? `greater than or equal to `\n : `greater than `}${new Date(Number(issue.minimum))}`;\n else\n message = \"Invalid input\";\n break;\n case ZodIssueCode.too_big:\n if (issue.type === \"array\")\n message = `Array must contain ${issue.exact ? `exactly` : issue.inclusive ? `at most` : `less than`} ${issue.maximum} element(s)`;\n else if (issue.type === \"string\")\n message = `String must contain ${issue.exact ? `exactly` : issue.inclusive ? `at most` : `under`} ${issue.maximum} character(s)`;\n else if (issue.type === \"number\")\n message = `Number must be ${issue.exact\n ? `exactly`\n : issue.inclusive\n ? `less than or equal to`\n : `less than`} ${issue.maximum}`;\n else if (issue.type === \"bigint\")\n message = `BigInt must be ${issue.exact\n ? `exactly`\n : issue.inclusive\n ? `less than or equal to`\n : `less than`} ${issue.maximum}`;\n else if (issue.type === \"date\")\n message = `Date must be ${issue.exact\n ? `exactly`\n : issue.inclusive\n ? `smaller than or equal to`\n : `smaller than`} ${new Date(Number(issue.maximum))}`;\n else\n message = \"Invalid input\";\n break;\n case ZodIssueCode.custom:\n message = `Invalid input`;\n break;\n case ZodIssueCode.invalid_intersection_types:\n message = `Intersection results could not be merged`;\n break;\n case ZodIssueCode.not_multiple_of:\n message = `Number must be a multiple of ${issue.multipleOf}`;\n break;\n case ZodIssueCode.not_finite:\n message = \"Number must be finite\";\n break;\n default:\n message = _ctx.defaultError;\n util.assertNever(issue);\n }\n return { message };\n};\n\nlet overrideErrorMap = errorMap;\nfunction setErrorMap(map) {\n overrideErrorMap = map;\n}\nfunction getErrorMap() {\n return overrideErrorMap;\n}\n\nconst makeIssue = (params) => {\n const { data, path, errorMaps, issueData } = params;\n const fullPath = [...path, ...(issueData.path || [])];\n const fullIssue = {\n ...issueData,\n path: fullPath,\n };\n let errorMessage = \"\";\n const maps = errorMaps\n .filter((m) => !!m)\n .slice()\n .reverse();\n for (const map of maps) {\n errorMessage = map(fullIssue, { data, defaultError: errorMessage }).message;\n }\n return {\n ...issueData,\n path: fullPath,\n message: issueData.message || errorMessage,\n };\n};\nconst EMPTY_PATH = [];\nfunction addIssueToContext(ctx, issueData) {\n const issue = makeIssue({\n issueData: issueData,\n data: ctx.data,\n path: ctx.path,\n errorMaps: [\n ctx.common.contextualErrorMap,\n ctx.schemaErrorMap,\n getErrorMap(),\n errorMap, // then global default map\n ].filter((x) => !!x),\n });\n ctx.common.issues.push(issue);\n}\nclass ParseStatus {\n constructor() {\n this.value = \"valid\";\n }\n dirty() {\n if (this.value === \"valid\")\n this.value = \"dirty\";\n }\n abort() {\n if (this.value !== \"aborted\")\n this.value = \"aborted\";\n }\n static mergeArray(status, results) {\n const arrayValue = [];\n for (const s of results) {\n if (s.status === \"aborted\")\n return INVALID;\n if (s.status === \"dirty\")\n status.dirty();\n arrayValue.push(s.value);\n }\n return { status: status.value, value: arrayValue };\n }\n static async mergeObjectAsync(status, pairs) {\n const syncPairs = [];\n for (const pair of pairs) {\n syncPairs.push({\n key: await pair.key,\n value: await pair.value,\n });\n }\n return ParseStatus.mergeObjectSync(status, syncPairs);\n }\n static mergeObjectSync(status, pairs) {\n const finalObject = {};\n for (const pair of pairs) {\n const { key, value } = pair;\n if (key.status === \"aborted\")\n return INVALID;\n if (value.status === \"aborted\")\n return INVALID;\n if (key.status === \"dirty\")\n status.dirty();\n if (value.status === \"dirty\")\n status.dirty();\n if (key.value !== \"__proto__\" &&\n (typeof value.value !== \"undefined\" || pair.alwaysSet)) {\n finalObject[key.value] = value.value;\n }\n }\n return { status: status.value, value: finalObject };\n }\n}\nconst INVALID = Object.freeze({\n status: \"aborted\",\n});\nconst DIRTY = (value) => ({ status: \"dirty\", value });\nconst OK = (value) => ({ status: \"valid\", value });\nconst isAborted = (x) => x.status === \"aborted\";\nconst isDirty = (x) => x.status === \"dirty\";\nconst isValid = (x) => x.status === \"valid\";\nconst isAsync = (x) => typeof Promise !== \"undefined\" && x instanceof Promise;\n\nvar errorUtil;\n(function (errorUtil) {\n errorUtil.errToObj = (message) => typeof message === \"string\" ? { message } : message || {};\n errorUtil.toString = (message) => typeof message === \"string\" ? message : message === null || message === void 0 ? void 0 : message.message;\n})(errorUtil || (errorUtil = {}));\n\nclass ParseInputLazyPath {\n constructor(parent, value, path, key) {\n this._cachedPath = [];\n this.parent = parent;\n this.data = value;\n this._path = path;\n this._key = key;\n }\n get path() {\n if (!this._cachedPath.length) {\n if (this._key instanceof Array) {\n this._cachedPath.push(...this._path, ...this._key);\n }\n else {\n this._cachedPath.push(...this._path, this._key);\n }\n }\n return this._cachedPath;\n }\n}\nconst handleResult = (ctx, result) => {\n if (isValid(result)) {\n return { success: true, data: result.value };\n }\n else {\n if (!ctx.common.issues.length) {\n throw new Error(\"Validation failed but no issues detected.\");\n }\n return {\n success: false,\n get error() {\n if (this._error)\n return this._error;\n const error = new ZodError(ctx.common.issues);\n this._error = error;\n return this._error;\n },\n };\n }\n};\nfunction processCreateParams(params) {\n if (!params)\n return {};\n const { errorMap, invalid_type_error, required_error, description } = params;\n if (errorMap && (invalid_type_error || required_error)) {\n throw new Error(`Can't use \"invalid_type_error\" or \"required_error\" in conjunction with custom error map.`);\n }\n if (errorMap)\n return { errorMap: errorMap, description };\n const customMap = (iss, ctx) => {\n if (iss.code !== \"invalid_type\")\n return { message: ctx.defaultError };\n if (typeof ctx.data === \"undefined\") {\n return { message: required_error !== null && required_error !== void 0 ? required_error : ctx.defaultError };\n }\n return { message: invalid_type_error !== null && invalid_type_error !== void 0 ? invalid_type_error : ctx.defaultError };\n };\n return { errorMap: customMap, description };\n}\nclass ZodType {\n constructor(def) {\n /** Alias of safeParseAsync */\n this.spa = this.safeParseAsync;\n this._def = def;\n this.parse = this.parse.bind(this);\n this.safeParse = this.safeParse.bind(this);\n this.parseAsync = this.parseAsync.bind(this);\n this.safeParseAsync = this.safeParseAsync.bind(this);\n this.spa = this.spa.bind(this);\n this.refine = this.refine.bind(this);\n this.refinement = this.refinement.bind(this);\n this.superRefine = this.superRefine.bind(this);\n this.optional = this.optional.bind(this);\n this.nullable = this.nullable.bind(this);\n this.nullish = this.nullish.bind(this);\n this.array = this.array.bind(this);\n this.promise = this.promise.bind(this);\n this.or = this.or.bind(this);\n this.and = this.and.bind(this);\n this.transform = this.transform.bind(this);\n this.brand = this.brand.bind(this);\n this.default = this.default.bind(this);\n this.catch = this.catch.bind(this);\n this.describe = this.describe.bind(this);\n this.pipe = this.pipe.bind(this);\n this.readonly = this.readonly.bind(this);\n this.isNullable = this.isNullable.bind(this);\n this.isOptional = this.isOptional.bind(this);\n }\n get description() {\n return this._def.description;\n }\n _getType(input) {\n return getParsedType(input.data);\n }\n _getOrReturnCtx(input, ctx) {\n return (ctx || {\n common: input.parent.common,\n data: input.data,\n parsedType: getParsedType(input.data),\n schemaErrorMap: this._def.errorMap,\n path: input.path,\n parent: input.parent,\n });\n }\n _processInputParams(input) {\n return {\n status: new ParseStatus(),\n ctx: {\n common: input.parent.common,\n data: input.data,\n parsedType: getParsedType(input.data),\n schemaErrorMap: this._def.errorMap,\n path: input.path,\n parent: input.parent,\n },\n };\n }\n _parseSync(input) {\n const result = this._parse(input);\n if (isAsync(result)) {\n throw new Error(\"Synchronous parse encountered promise.\");\n }\n return result;\n }\n _parseAsync(input) {\n const result = this._parse(input);\n return Promise.resolve(result);\n }\n parse(data, params) {\n const result = this.safeParse(data, params);\n if (result.success)\n return result.data;\n throw result.error;\n }\n safeParse(data, params) {\n var _a;\n const ctx = {\n common: {\n issues: [],\n async: (_a = params === null || params === void 0 ? void 0 : params.async) !== null && _a !== void 0 ? _a : false,\n contextualErrorMap: params === null || params === void 0 ? void 0 : params.errorMap,\n },\n path: (params === null || params === void 0 ? void 0 : params.path) || [],\n schemaErrorMap: this._def.errorMap,\n parent: null,\n data,\n parsedType: getParsedType(data),\n };\n const result = this._parseSync({ data, path: ctx.path, parent: ctx });\n return handleResult(ctx, result);\n }\n async parseAsync(data, params) {\n const result = await this.safeParseAsync(data, params);\n if (result.success)\n return result.data;\n throw result.error;\n }\n async safeParseAsync(data, params) {\n const ctx = {\n common: {\n issues: [],\n contextualErrorMap: params === null || params === void 0 ? void 0 : params.errorMap,\n async: true,\n },\n path: (params === null || params === void 0 ? void 0 : params.path) || [],\n schemaErrorMap: this._def.errorMap,\n parent: null,\n data,\n parsedType: getParsedType(data),\n };\n const maybeAsyncResult = this._parse({ data, path: ctx.path, parent: ctx });\n const result = await (isAsync(maybeAsyncResult)\n ? maybeAsyncResult\n : Promise.resolve(maybeAsyncResult));\n return handleResult(ctx, result);\n }\n refine(check, message) {\n const getIssueProperties = (val) => {\n if (typeof message === \"string\" || typeof message === \"undefined\") {\n return { message };\n }\n else if (typeof message === \"function\") {\n return message(val);\n }\n else {\n return message;\n }\n };\n return this._refinement((val, ctx) => {\n const result = check(val);\n const setError = () => ctx.addIssue({\n code: ZodIssueCode.custom,\n ...getIssueProperties(val),\n });\n if (typeof Promise !== \"undefined\" && result instanceof Promise) {\n return result.then((data) => {\n if (!data) {\n setError();\n return false;\n }\n else {\n return true;\n }\n });\n }\n if (!result) {\n setError();\n return false;\n }\n else {\n return true;\n }\n });\n }\n refinement(check, refinementData) {\n return this._refinement((val, ctx) => {\n if (!check(val)) {\n ctx.addIssue(typeof refinementData === \"function\"\n ? refinementData(val, ctx)\n : refinementData);\n return false;\n }\n else {\n return true;\n }\n });\n }\n _refinement(refinement) {\n return new ZodEffects({\n schema: this,\n typeName: ZodFirstPartyTypeKind.ZodEffects,\n effect: { type: \"refinement\", refinement },\n });\n }\n superRefine(refinement) {\n return this._refinement(refinement);\n }\n optional() {\n return ZodOptional.create(this, this._def);\n }\n nullable() {\n return ZodNullable.create(this, this._def);\n }\n nullish() {\n return this.nullable().optional();\n }\n array() {\n return ZodArray.create(this, this._def);\n }\n promise() {\n return ZodPromise.create(this, this._def);\n }\n or(option) {\n return ZodUnion.create([this, option], this._def);\n }\n and(incoming) {\n return ZodIntersection.create(this, incoming, this._def);\n }\n transform(transform) {\n return new ZodEffects({\n ...processCreateParams(this._def),\n schema: this,\n typeName: ZodFirstPartyTypeKind.ZodEffects,\n effect: { type: \"transform\", transform },\n });\n }\n default(def) {\n const defaultValueFunc = typeof def === \"function\" ? def : () => def;\n return new ZodDefault({\n ...processCreateParams(this._def),\n innerType: this,\n defaultValue: defaultValueFunc,\n typeName: ZodFirstPartyTypeKind.ZodDefault,\n });\n }\n brand() {\n return new ZodBranded({\n typeName: ZodFirstPartyTypeKind.ZodBranded,\n type: this,\n ...processCreateParams(this._def),\n });\n }\n catch(def) {\n const catchValueFunc = typeof def === \"function\" ? def : () => def;\n return new ZodCatch({\n ...processCreateParams(this._def),\n innerType: this,\n catchValue: catchValueFunc,\n typeName: ZodFirstPartyTypeKind.ZodCatch,\n });\n }\n describe(description) {\n const This = this.constructor;\n return new This({\n ...this._def,\n description,\n });\n }\n pipe(target) {\n return ZodPipeline.create(this, target);\n }\n readonly() {\n return ZodReadonly.create(this);\n }\n isOptional() {\n return this.safeParse(undefined).success;\n }\n isNullable() {\n return this.safeParse(null).success;\n }\n}\nconst cuidRegex = /^c[^\\s-]{8,}$/i;\nconst cuid2Regex = /^[a-z][a-z0-9]*$/;\nconst ulidRegex = /^[0-9A-HJKMNP-TV-Z]{26}$/;\n// const uuidRegex =\n// /^([a-f0-9]{8}-[a-f0-9]{4}-[1-5][a-f0-9]{3}-[a-f0-9]{4}-[a-f0-9]{12}|00000000-0000-0000-0000-000000000000)$/i;\nconst uuidRegex = /^[0-9a-fA-F]{8}\\b-[0-9a-fA-F]{4}\\b-[0-9a-fA-F]{4}\\b-[0-9a-fA-F]{4}\\b-[0-9a-fA-F]{12}$/i;\n// from https://stackoverflow.com/a/46181/1550155\n// old version: too slow, didn't support unicode\n// const emailRegex = /^((([a-z]|\\d|[!#\\$%&'\\*\\+\\-\\/=\\?\\^_`{\\|}~]|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])+(\\.([a-z]|\\d|[!#\\$%&'\\*\\+\\-\\/=\\?\\^_`{\\|}~]|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])+)*)|((\\x22)((((\\x20|\\x09)*(\\x0d\\x0a))?(\\x20|\\x09)+)?(([\\x01-\\x08\\x0b\\x0c\\x0e-\\x1f\\x7f]|\\x21|[\\x23-\\x5b]|[\\x5d-\\x7e]|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])|(\\\\([\\x01-\\x09\\x0b\\x0c\\x0d-\\x7f]|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF]))))*(((\\x20|\\x09)*(\\x0d\\x0a))?(\\x20|\\x09)+)?(\\x22)))@((([a-z]|\\d|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])|(([a-z]|\\d|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])([a-z]|\\d|-|\\.|_|~|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])*([a-z]|\\d|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])))\\.)+(([a-z]|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])|(([a-z]|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])([a-z]|\\d|-|\\.|_|~|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])*([a-z]|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])))$/i;\n//old email regex\n// const emailRegex = /^(([^<>()[\\].,;:\\s@\"]+(\\.[^<>()[\\].,;:\\s@\"]+)*)|(\".+\"))@((?!-)([^<>()[\\].,;:\\s@\"]+\\.)+[^<>()[\\].,;:\\s@\"]{1,})[^-<>()[\\].,;:\\s@\"]$/i;\n// eslint-disable-next-line\n// const emailRegex =\n// /^(([^<>()[\\]\\\\.,;:\\s@\\\"]+(\\.[^<>()[\\]\\\\.,;:\\s@\\\"]+)*)|(\\\".+\\\"))@((\\[(((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2}))\\.){3}((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2}))\\])|(\\[IPv6:(([a-f0-9]{1,4}:){7}|::([a-f0-9]{1,4}:){0,6}|([a-f0-9]{1,4}:){1}:([a-f0-9]{1,4}:){0,5}|([a-f0-9]{1,4}:){2}:([a-f0-9]{1,4}:){0,4}|([a-f0-9]{1,4}:){3}:([a-f0-9]{1,4}:){0,3}|([a-f0-9]{1,4}:){4}:([a-f0-9]{1,4}:){0,2}|([a-f0-9]{1,4}:){5}:([a-f0-9]{1,4}:){0,1})([a-f0-9]{1,4}|(((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2}))\\.){3}((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2})))\\])|([A-Za-z0-9]([A-Za-z0-9-]*[A-Za-z0-9])*(\\.[A-Za-z]{2,})+))$/;\n// const emailRegex =\n// /^[a-zA-Z0-9\\.\\!\\#\\$\\%\\&\\'\\*\\+\\/\\=\\?\\^\\_\\`\\{\\|\\}\\~\\-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/;\n// const emailRegex =\n// /^(?:[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*|\"(?:[\\x01-\\x08\\x0b\\x0c\\x0e-\\x1f\\x21\\x23-\\x5b\\x5d-\\x7f]|\\\\[\\x01-\\x09\\x0b\\x0c\\x0e-\\x7f])*\")@(?:(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?|\\[(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?|[a-z0-9-]*[a-z0-9]:(?:[\\x01-\\x08\\x0b\\x0c\\x0e-\\x1f\\x21-\\x5a\\x53-\\x7f]|\\\\[\\x01-\\x09\\x0b\\x0c\\x0e-\\x7f])+)\\])$/i;\nconst emailRegex = /^(?!\\.)(?!.*\\.\\.)([A-Z0-9_+-\\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\\-]*\\.)+[A-Z]{2,}$/i;\n// const emailRegex =\n// /^[a-z0-9.!#$%&’*+/=?^_`{|}~-]+@[a-z0-9-]+(?:\\.[a-z0-9\\-]+)*$/i;\n// from https://thekevinscott.com/emojis-in-javascript/#writing-a-regular-expression\nconst _emojiRegex = `^(\\\\p{Extended_Pictographic}|\\\\p{Emoji_Component})+$`;\nlet emojiRegex;\nconst ipv4Regex = /^(((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2}))\\.){3}((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2}))$/;\nconst ipv6Regex = /^(([a-f0-9]{1,4}:){7}|::([a-f0-9]{1,4}:){0,6}|([a-f0-9]{1,4}:){1}:([a-f0-9]{1,4}:){0,5}|([a-f0-9]{1,4}:){2}:([a-f0-9]{1,4}:){0,4}|([a-f0-9]{1,4}:){3}:([a-f0-9]{1,4}:){0,3}|([a-f0-9]{1,4}:){4}:([a-f0-9]{1,4}:){0,2}|([a-f0-9]{1,4}:){5}:([a-f0-9]{1,4}:){0,1})([a-f0-9]{1,4}|(((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2}))\\.){3}((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2})))$/;\n// Adapted from https://stackoverflow.com/a/3143231\nconst datetimeRegex = (args) => {\n if (args.precision) {\n if (args.offset) {\n return new RegExp(`^\\\\d{4}-\\\\d{2}-\\\\d{2}T\\\\d{2}:\\\\d{2}:\\\\d{2}\\\\.\\\\d{${args.precision}}(([+-]\\\\d{2}(:?\\\\d{2})?)|Z)$`);\n }\n else {\n return new RegExp(`^\\\\d{4}-\\\\d{2}-\\\\d{2}T\\\\d{2}:\\\\d{2}:\\\\d{2}\\\\.\\\\d{${args.precision}}Z$`);\n }\n }\n else if (args.precision === 0) {\n if (args.offset) {\n return new RegExp(`^\\\\d{4}-\\\\d{2}-\\\\d{2}T\\\\d{2}:\\\\d{2}:\\\\d{2}(([+-]\\\\d{2}(:?\\\\d{2})?)|Z)$`);\n }\n else {\n return new RegExp(`^\\\\d{4}-\\\\d{2}-\\\\d{2}T\\\\d{2}:\\\\d{2}:\\\\d{2}Z$`);\n }\n }\n else {\n if (args.offset) {\n return new RegExp(`^\\\\d{4}-\\\\d{2}-\\\\d{2}T\\\\d{2}:\\\\d{2}:\\\\d{2}(\\\\.\\\\d+)?(([+-]\\\\d{2}(:?\\\\d{2})?)|Z)$`);\n }\n else {\n return new RegExp(`^\\\\d{4}-\\\\d{2}-\\\\d{2}T\\\\d{2}:\\\\d{2}:\\\\d{2}(\\\\.\\\\d+)?Z$`);\n }\n }\n};\nfunction isValidIP(ip, version) {\n if ((version === \"v4\" || !version) && ipv4Regex.test(ip)) {\n return true;\n }\n if ((version === \"v6\" || !version) && ipv6Regex.test(ip)) {\n return true;\n }\n return false;\n}\nclass ZodString extends ZodType {\n _parse(input) {\n if (this._def.coerce) {\n input.data = String(input.data);\n }\n const parsedType = this._getType(input);\n if (parsedType !== ZodParsedType.string) {\n const ctx = this._getOrReturnCtx(input);\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_type,\n expected: ZodParsedType.string,\n received: ctx.parsedType,\n }\n //\n );\n return INVALID;\n }\n const status = new ParseStatus();\n let ctx = undefined;\n for (const check of this._def.checks) {\n if (check.kind === \"min\") {\n if (input.data.length < check.value) {\n ctx = this._getOrReturnCtx(input, ctx);\n addIssueToContext(ctx, {\n code: ZodIssueCode.too_small,\n minimum: check.value,\n type: \"string\",\n inclusive: true,\n exact: false,\n message: check.message,\n });\n status.dirty();\n }\n }\n else if (check.kind === \"max\") {\n if (input.data.length > check.value) {\n ctx = this._getOrReturnCtx(input, ctx);\n addIssueToContext(ctx, {\n code: ZodIssueCode.too_big,\n maximum: check.value,\n type: \"string\",\n inclusive: true,\n exact: false,\n message: check.message,\n });\n status.dirty();\n }\n }\n else if (check.kind === \"length\") {\n const tooBig = input.data.length > check.value;\n const tooSmall = input.data.length < check.value;\n if (tooBig || tooSmall) {\n ctx = this._getOrReturnCtx(input, ctx);\n if (tooBig) {\n addIssueToContext(ctx, {\n code: ZodIssueCode.too_big,\n maximum: check.value,\n type: \"string\",\n inclusive: true,\n exact: true,\n message: check.message,\n });\n }\n else if (tooSmall) {\n addIssueToContext(ctx, {\n code: ZodIssueCode.too_small,\n minimum: check.value,\n type: \"string\",\n inclusive: true,\n exact: true,\n message: check.message,\n });\n }\n status.dirty();\n }\n }\n else if (check.kind === \"email\") {\n if (!emailRegex.test(input.data)) {\n ctx = this._getOrReturnCtx(input, ctx);\n addIssueToContext(ctx, {\n validation: \"email\",\n code: ZodIssueCode.invalid_string,\n message: check.message,\n });\n status.dirty();\n }\n }\n else if (check.kind === \"emoji\") {\n if (!emojiRegex) {\n emojiRegex = new RegExp(_emojiRegex, \"u\");\n }\n if (!emojiRegex.test(input.data)) {\n ctx = this._getOrReturnCtx(input, ctx);\n addIssueToContext(ctx, {\n validation: \"emoji\",\n code: ZodIssueCode.invalid_string,\n message: check.message,\n });\n status.dirty();\n }\n }\n else if (check.kind === \"uuid\") {\n if (!uuidRegex.test(input.data)) {\n ctx = this._getOrReturnCtx(input, ctx);\n addIssueToContext(ctx, {\n validation: \"uuid\",\n code: ZodIssueCode.invalid_string,\n message: check.message,\n });\n status.dirty();\n }\n }\n else if (check.kind === \"cuid\") {\n if (!cuidRegex.test(input.data)) {\n ctx = this._getOrReturnCtx(input, ctx);\n addIssueToContext(ctx, {\n validation: \"cuid\",\n code: ZodIssueCode.invalid_string,\n message: check.message,\n });\n status.dirty();\n }\n }\n else if (check.kind === \"cuid2\") {\n if (!cuid2Regex.test(input.data)) {\n ctx = this._getOrReturnCtx(input, ctx);\n addIssueToContext(ctx, {\n validation: \"cuid2\",\n code: ZodIssueCode.invalid_string,\n message: check.message,\n });\n status.dirty();\n }\n }\n else if (check.kind === \"ulid\") {\n if (!ulidRegex.test(input.data)) {\n ctx = this._getOrReturnCtx(input, ctx);\n addIssueToContext(ctx, {\n validation: \"ulid\",\n code: ZodIssueCode.invalid_string,\n message: check.message,\n });\n status.dirty();\n }\n }\n else if (check.kind === \"url\") {\n try {\n new URL(input.data);\n }\n catch (_a) {\n ctx = this._getOrReturnCtx(input, ctx);\n addIssueToContext(ctx, {\n validation: \"url\",\n code: ZodIssueCode.invalid_string,\n message: check.message,\n });\n status.dirty();\n }\n }\n else if (check.kind === \"regex\") {\n check.regex.lastIndex = 0;\n const testResult = check.regex.test(input.data);\n if (!testResult) {\n ctx = this._getOrReturnCtx(input, ctx);\n addIssueToContext(ctx, {\n validation: \"regex\",\n code: ZodIssueCode.invalid_string,\n message: check.message,\n });\n status.dirty();\n }\n }\n else if (check.kind === \"trim\") {\n input.data = input.data.trim();\n }\n else if (check.kind === \"includes\") {\n if (!input.data.includes(check.value, check.position)) {\n ctx = this._getOrReturnCtx(input, ctx);\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_string,\n validation: { includes: check.value, position: check.position },\n message: check.message,\n });\n status.dirty();\n }\n }\n else if (check.kind === \"toLowerCase\") {\n input.data = input.data.toLowerCase();\n }\n else if (check.kind === \"toUpperCase\") {\n input.data = input.data.toUpperCase();\n }\n else if (check.kind === \"startsWith\") {\n if (!input.data.startsWith(check.value)) {\n ctx = this._getOrReturnCtx(input, ctx);\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_string,\n validation: { startsWith: check.value },\n message: check.message,\n });\n status.dirty();\n }\n }\n else if (check.kind === \"endsWith\") {\n if (!input.data.endsWith(check.value)) {\n ctx = this._getOrReturnCtx(input, ctx);\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_string,\n validation: { endsWith: check.value },\n message: check.message,\n });\n status.dirty();\n }\n }\n else if (check.kind === \"datetime\") {\n const regex = datetimeRegex(check);\n if (!regex.test(input.data)) {\n ctx = this._getOrReturnCtx(input, ctx);\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_string,\n validation: \"datetime\",\n message: check.message,\n });\n status.dirty();\n }\n }\n else if (check.kind === \"ip\") {\n if (!isValidIP(input.data, check.version)) {\n ctx = this._getOrReturnCtx(input, ctx);\n addIssueToContext(ctx, {\n validation: \"ip\",\n code: ZodIssueCode.invalid_string,\n message: check.message,\n });\n status.dirty();\n }\n }\n else {\n util.assertNever(check);\n }\n }\n return { status: status.value, value: input.data };\n }\n _regex(regex, validation, message) {\n return this.refinement((data) => regex.test(data), {\n validation,\n code: ZodIssueCode.invalid_string,\n ...errorUtil.errToObj(message),\n });\n }\n _addCheck(check) {\n return new ZodString({\n ...this._def,\n checks: [...this._def.checks, check],\n });\n }\n email(message) {\n return this._addCheck({ kind: \"email\", ...errorUtil.errToObj(message) });\n }\n url(message) {\n return this._addCheck({ kind: \"url\", ...errorUtil.errToObj(message) });\n }\n emoji(message) {\n return this._addCheck({ kind: \"emoji\", ...errorUtil.errToObj(message) });\n }\n uuid(message) {\n return this._addCheck({ kind: \"uuid\", ...errorUtil.errToObj(message) });\n }\n cuid(message) {\n return this._addCheck({ kind: \"cuid\", ...errorUtil.errToObj(message) });\n }\n cuid2(message) {\n return this._addCheck({ kind: \"cuid2\", ...errorUtil.errToObj(message) });\n }\n ulid(message) {\n return this._addCheck({ kind: \"ulid\", ...errorUtil.errToObj(message) });\n }\n ip(options) {\n return this._addCheck({ kind: \"ip\", ...errorUtil.errToObj(options) });\n }\n datetime(options) {\n var _a;\n if (typeof options === \"string\") {\n return this._addCheck({\n kind: \"datetime\",\n precision: null,\n offset: false,\n message: options,\n });\n }\n return this._addCheck({\n kind: \"datetime\",\n precision: typeof (options === null || options === void 0 ? void 0 : options.precision) === \"undefined\" ? null : options === null || options === void 0 ? void 0 : options.precision,\n offset: (_a = options === null || options === void 0 ? void 0 : options.offset) !== null && _a !== void 0 ? _a : false,\n ...errorUtil.errToObj(options === null || options === void 0 ? void 0 : options.message),\n });\n }\n regex(regex, message) {\n return this._addCheck({\n kind: \"regex\",\n regex: regex,\n ...errorUtil.errToObj(message),\n });\n }\n includes(value, options) {\n return this._addCheck({\n kind: \"includes\",\n value: value,\n position: options === null || options === void 0 ? void 0 : options.position,\n ...errorUtil.errToObj(options === null || options === void 0 ? void 0 : options.message),\n });\n }\n startsWith(value, message) {\n return this._addCheck({\n kind: \"startsWith\",\n value: value,\n ...errorUtil.errToObj(message),\n });\n }\n endsWith(value, message) {\n return this._addCheck({\n kind: \"endsWith\",\n value: value,\n ...errorUtil.errToObj(message),\n });\n }\n min(minLength, message) {\n return this._addCheck({\n kind: \"min\",\n value: minLength,\n ...errorUtil.errToObj(message),\n });\n }\n max(maxLength, message) {\n return this._addCheck({\n kind: \"max\",\n value: maxLength,\n ...errorUtil.errToObj(message),\n });\n }\n length(len, message) {\n return this._addCheck({\n kind: \"length\",\n value: len,\n ...errorUtil.errToObj(message),\n });\n }\n /**\n * @deprecated Use z.string().min(1) instead.\n * @see {@link ZodString.min}\n */\n nonempty(message) {\n return this.min(1, errorUtil.errToObj(message));\n }\n trim() {\n return new ZodString({\n ...this._def,\n checks: [...this._def.checks, { kind: \"trim\" }],\n });\n }\n toLowerCase() {\n return new ZodString({\n ...this._def,\n checks: [...this._def.checks, { kind: \"toLowerCase\" }],\n });\n }\n toUpperCase() {\n return new ZodString({\n ...this._def,\n checks: [...this._def.checks, { kind: \"toUpperCase\" }],\n });\n }\n get isDatetime() {\n return !!this._def.checks.find((ch) => ch.kind === \"datetime\");\n }\n get isEmail() {\n return !!this._def.checks.find((ch) => ch.kind === \"email\");\n }\n get isURL() {\n return !!this._def.checks.find((ch) => ch.kind === \"url\");\n }\n get isEmoji() {\n return !!this._def.checks.find((ch) => ch.kind === \"emoji\");\n }\n get isUUID() {\n return !!this._def.checks.find((ch) => ch.kind === \"uuid\");\n }\n get isCUID() {\n return !!this._def.checks.find((ch) => ch.kind === \"cuid\");\n }\n get isCUID2() {\n return !!this._def.checks.find((ch) => ch.kind === \"cuid2\");\n }\n get isULID() {\n return !!this._def.checks.find((ch) => ch.kind === \"ulid\");\n }\n get isIP() {\n return !!this._def.checks.find((ch) => ch.kind === \"ip\");\n }\n get minLength() {\n let min = null;\n for (const ch of this._def.checks) {\n if (ch.kind === \"min\") {\n if (min === null || ch.value > min)\n min = ch.value;\n }\n }\n return min;\n }\n get maxLength() {\n let max = null;\n for (const ch of this._def.checks) {\n if (ch.kind === \"max\") {\n if (max === null || ch.value < max)\n max = ch.value;\n }\n }\n return max;\n }\n}\nZodString.create = (params) => {\n var _a;\n return new ZodString({\n checks: [],\n typeName: ZodFirstPartyTypeKind.ZodString,\n coerce: (_a = params === null || params === void 0 ? void 0 : params.coerce) !== null && _a !== void 0 ? _a : false,\n ...processCreateParams(params),\n });\n};\n// https://stackoverflow.com/questions/3966484/why-does-modulus-operator-return-fractional-number-in-javascript/31711034#31711034\nfunction floatSafeRemainder(val, step) {\n const valDecCount = (val.toString().split(\".\")[1] || \"\").length;\n const stepDecCount = (step.toString().split(\".\")[1] || \"\").length;\n const decCount = valDecCount > stepDecCount ? valDecCount : stepDecCount;\n const valInt = parseInt(val.toFixed(decCount).replace(\".\", \"\"));\n const stepInt = parseInt(step.toFixed(decCount).replace(\".\", \"\"));\n return (valInt % stepInt) / Math.pow(10, decCount);\n}\nclass ZodNumber extends ZodType {\n constructor() {\n super(...arguments);\n this.min = this.gte;\n this.max = this.lte;\n this.step = this.multipleOf;\n }\n _parse(input) {\n if (this._def.coerce) {\n input.data = Number(input.data);\n }\n const parsedType = this._getType(input);\n if (parsedType !== ZodParsedType.number) {\n const ctx = this._getOrReturnCtx(input);\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_type,\n expected: ZodParsedType.number,\n received: ctx.parsedType,\n });\n return INVALID;\n }\n let ctx = undefined;\n const status = new ParseStatus();\n for (const check of this._def.checks) {\n if (check.kind === \"int\") {\n if (!util.isInteger(input.data)) {\n ctx = this._getOrReturnCtx(input, ctx);\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_type,\n expected: \"integer\",\n received: \"float\",\n message: check.message,\n });\n status.dirty();\n }\n }\n else if (check.kind === \"min\") {\n const tooSmall = check.inclusive\n ? input.data < check.value\n : input.data <= check.value;\n if (tooSmall) {\n ctx = this._getOrReturnCtx(input, ctx);\n addIssueToContext(ctx, {\n code: ZodIssueCode.too_small,\n minimum: check.value,\n type: \"number\",\n inclusive: check.inclusive,\n exact: false,\n message: check.message,\n });\n status.dirty();\n }\n }\n else if (check.kind === \"max\") {\n const tooBig = check.inclusive\n ? input.data > check.value\n : input.data >= check.value;\n if (tooBig) {\n ctx = this._getOrReturnCtx(input, ctx);\n addIssueToContext(ctx, {\n code: ZodIssueCode.too_big,\n maximum: check.value,\n type: \"number\",\n inclusive: check.inclusive,\n exact: false,\n message: check.message,\n });\n status.dirty();\n }\n }\n else if (check.kind === \"multipleOf\") {\n if (floatSafeRemainder(input.data, check.value) !== 0) {\n ctx = this._getOrReturnCtx(input, ctx);\n addIssueToContext(ctx, {\n code: ZodIssueCode.not_multiple_of,\n multipleOf: check.value,\n message: check.message,\n });\n status.dirty();\n }\n }\n else if (check.kind === \"finite\") {\n if (!Number.isFinite(input.data)) {\n ctx = this._getOrReturnCtx(input, ctx);\n addIssueToContext(ctx, {\n code: ZodIssueCode.not_finite,\n message: check.message,\n });\n status.dirty();\n }\n }\n else {\n util.assertNever(check);\n }\n }\n return { status: status.value, value: input.data };\n }\n gte(value, message) {\n return this.setLimit(\"min\", value, true, errorUtil.toString(message));\n }\n gt(value, message) {\n return this.setLimit(\"min\", value, false, errorUtil.toString(message));\n }\n lte(value, message) {\n return this.setLimit(\"max\", value, true, errorUtil.toString(message));\n }\n lt(value, message) {\n return this.setLimit(\"max\", value, false, errorUtil.toString(message));\n }\n setLimit(kind, value, inclusive, message) {\n return new ZodNumber({\n ...this._def,\n checks: [\n ...this._def.checks,\n {\n kind,\n value,\n inclusive,\n message: errorUtil.toString(message),\n },\n ],\n });\n }\n _addCheck(check) {\n return new ZodNumber({\n ...this._def,\n checks: [...this._def.checks, check],\n });\n }\n int(message) {\n return this._addCheck({\n kind: \"int\",\n message: errorUtil.toString(message),\n });\n }\n positive(message) {\n return this._addCheck({\n kind: \"min\",\n value: 0,\n inclusive: false,\n message: errorUtil.toString(message),\n });\n }\n negative(message) {\n return this._addCheck({\n kind: \"max\",\n value: 0,\n inclusive: false,\n message: errorUtil.toString(message),\n });\n }\n nonpositive(message) {\n return this._addCheck({\n kind: \"max\",\n value: 0,\n inclusive: true,\n message: errorUtil.toString(message),\n });\n }\n nonnegative(message) {\n return this._addCheck({\n kind: \"min\",\n value: 0,\n inclusive: true,\n message: errorUtil.toString(message),\n });\n }\n multipleOf(value, message) {\n return this._addCheck({\n kind: \"multipleOf\",\n value: value,\n message: errorUtil.toString(message),\n });\n }\n finite(message) {\n return this._addCheck({\n kind: \"finite\",\n message: errorUtil.toString(message),\n });\n }\n safe(message) {\n return this._addCheck({\n kind: \"min\",\n inclusive: true,\n value: Number.MIN_SAFE_INTEGER,\n message: errorUtil.toString(message),\n })._addCheck({\n kind: \"max\",\n inclusive: true,\n value: Number.MAX_SAFE_INTEGER,\n message: errorUtil.toString(message),\n });\n }\n get minValue() {\n let min = null;\n for (const ch of this._def.checks) {\n if (ch.kind === \"min\") {\n if (min === null || ch.value > min)\n min = ch.value;\n }\n }\n return min;\n }\n get maxValue() {\n let max = null;\n for (const ch of this._def.checks) {\n if (ch.kind === \"max\") {\n if (max === null || ch.value < max)\n max = ch.value;\n }\n }\n return max;\n }\n get isInt() {\n return !!this._def.checks.find((ch) => ch.kind === \"int\" ||\n (ch.kind === \"multipleOf\" && util.isInteger(ch.value)));\n }\n get isFinite() {\n let max = null, min = null;\n for (const ch of this._def.checks) {\n if (ch.kind === \"finite\" ||\n ch.kind === \"int\" ||\n ch.kind === \"multipleOf\") {\n return true;\n }\n else if (ch.kind === \"min\") {\n if (min === null || ch.value > min)\n min = ch.value;\n }\n else if (ch.kind === \"max\") {\n if (max === null || ch.value < max)\n max = ch.value;\n }\n }\n return Number.isFinite(min) && Number.isFinite(max);\n }\n}\nZodNumber.create = (params) => {\n return new ZodNumber({\n checks: [],\n typeName: ZodFirstPartyTypeKind.ZodNumber,\n coerce: (params === null || params === void 0 ? void 0 : params.coerce) || false,\n ...processCreateParams(params),\n });\n};\nclass ZodBigInt extends ZodType {\n constructor() {\n super(...arguments);\n this.min = this.gte;\n this.max = this.lte;\n }\n _parse(input) {\n if (this._def.coerce) {\n input.data = BigInt(input.data);\n }\n const parsedType = this._getType(input);\n if (parsedType !== ZodParsedType.bigint) {\n const ctx = this._getOrReturnCtx(input);\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_type,\n expected: ZodParsedType.bigint,\n received: ctx.parsedType,\n });\n return INVALID;\n }\n let ctx = undefined;\n const status = new ParseStatus();\n for (const check of this._def.checks) {\n if (check.kind === \"min\") {\n const tooSmall = check.inclusive\n ? input.data < check.value\n : input.data <= check.value;\n if (tooSmall) {\n ctx = this._getOrReturnCtx(input, ctx);\n addIssueToContext(ctx, {\n code: ZodIssueCode.too_small,\n type: \"bigint\",\n minimum: check.value,\n inclusive: check.inclusive,\n message: check.message,\n });\n status.dirty();\n }\n }\n else if (check.kind === \"max\") {\n const tooBig = check.inclusive\n ? input.data > check.value\n : input.data >= check.value;\n if (tooBig) {\n ctx = this._getOrReturnCtx(input, ctx);\n addIssueToContext(ctx, {\n code: ZodIssueCode.too_big,\n type: \"bigint\",\n maximum: check.value,\n inclusive: check.inclusive,\n message: check.message,\n });\n status.dirty();\n }\n }\n else if (check.kind === \"multipleOf\") {\n if (input.data % check.value !== BigInt(0)) {\n ctx = this._getOrReturnCtx(input, ctx);\n addIssueToContext(ctx, {\n code: ZodIssueCode.not_multiple_of,\n multipleOf: check.value,\n message: check.message,\n });\n status.dirty();\n }\n }\n else {\n util.assertNever(check);\n }\n }\n return { status: status.value, value: input.data };\n }\n gte(value, message) {\n return this.setLimit(\"min\", value, true, errorUtil.toString(message));\n }\n gt(value, message) {\n return this.setLimit(\"min\", value, false, errorUtil.toString(message));\n }\n lte(value, message) {\n return this.setLimit(\"max\", value, true, errorUtil.toString(message));\n }\n lt(value, message) {\n return this.setLimit(\"max\", value, false, errorUtil.toString(message));\n }\n setLimit(kind, value, inclusive, message) {\n return new ZodBigInt({\n ...this._def,\n checks: [\n ...this._def.checks,\n {\n kind,\n value,\n inclusive,\n message: errorUtil.toString(message),\n },\n ],\n });\n }\n _addCheck(check) {\n return new ZodBigInt({\n ...this._def,\n checks: [...this._def.checks, check],\n });\n }\n positive(message) {\n return this._addCheck({\n kind: \"min\",\n value: BigInt(0),\n inclusive: false,\n message: errorUtil.toString(message),\n });\n }\n negative(message) {\n return this._addCheck({\n kind: \"max\",\n value: BigInt(0),\n inclusive: false,\n message: errorUtil.toString(message),\n });\n }\n nonpositive(message) {\n return this._addCheck({\n kind: \"max\",\n value: BigInt(0),\n inclusive: true,\n message: errorUtil.toString(message),\n });\n }\n nonnegative(message) {\n return this._addCheck({\n kind: \"min\",\n value: BigInt(0),\n inclusive: true,\n message: errorUtil.toString(message),\n });\n }\n multipleOf(value, message) {\n return this._addCheck({\n kind: \"multipleOf\",\n value,\n message: errorUtil.toString(message),\n });\n }\n get minValue() {\n let min = null;\n for (const ch of this._def.checks) {\n if (ch.kind === \"min\") {\n if (min === null || ch.value > min)\n min = ch.value;\n }\n }\n return min;\n }\n get maxValue() {\n let max = null;\n for (const ch of this._def.checks) {\n if (ch.kind === \"max\") {\n if (max === null || ch.value < max)\n max = ch.value;\n }\n }\n return max;\n }\n}\nZodBigInt.create = (params) => {\n var _a;\n return new ZodBigInt({\n checks: [],\n typeName: ZodFirstPartyTypeKind.ZodBigInt,\n coerce: (_a = params === null || params === void 0 ? void 0 : params.coerce) !== null && _a !== void 0 ? _a : false,\n ...processCreateParams(params),\n });\n};\nclass ZodBoolean extends ZodType {\n _parse(input) {\n if (this._def.coerce) {\n input.data = Boolean(input.data);\n }\n const parsedType = this._getType(input);\n if (parsedType !== ZodParsedType.boolean) {\n const ctx = this._getOrReturnCtx(input);\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_type,\n expected: ZodParsedType.boolean,\n received: ctx.parsedType,\n });\n return INVALID;\n }\n return OK(input.data);\n }\n}\nZodBoolean.create = (params) => {\n return new ZodBoolean({\n typeName: ZodFirstPartyTypeKind.ZodBoolean,\n coerce: (params === null || params === void 0 ? void 0 : params.coerce) || false,\n ...processCreateParams(params),\n });\n};\nclass ZodDate extends ZodType {\n _parse(input) {\n if (this._def.coerce) {\n input.data = new Date(input.data);\n }\n const parsedType = this._getType(input);\n if (parsedType !== ZodParsedType.date) {\n const ctx = this._getOrReturnCtx(input);\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_type,\n expected: ZodParsedType.date,\n received: ctx.parsedType,\n });\n return INVALID;\n }\n if (isNaN(input.data.getTime())) {\n const ctx = this._getOrReturnCtx(input);\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_date,\n });\n return INVALID;\n }\n const status = new ParseStatus();\n let ctx = undefined;\n for (const check of this._def.checks) {\n if (check.kind === \"min\") {\n if (input.data.getTime() < check.value) {\n ctx = this._getOrReturnCtx(input, ctx);\n addIssueToContext(ctx, {\n code: ZodIssueCode.too_small,\n message: check.message,\n inclusive: true,\n exact: false,\n minimum: check.value,\n type: \"date\",\n });\n status.dirty();\n }\n }\n else if (check.kind === \"max\") {\n if (input.data.getTime() > check.value) {\n ctx = this._getOrReturnCtx(input, ctx);\n addIssueToContext(ctx, {\n code: ZodIssueCode.too_big,\n message: check.message,\n inclusive: true,\n exact: false,\n maximum: check.value,\n type: \"date\",\n });\n status.dirty();\n }\n }\n else {\n util.assertNever(check);\n }\n }\n return {\n status: status.value,\n value: new Date(input.data.getTime()),\n };\n }\n _addCheck(check) {\n return new ZodDate({\n ...this._def,\n checks: [...this._def.checks, check],\n });\n }\n min(minDate, message) {\n return this._addCheck({\n kind: \"min\",\n value: minDate.getTime(),\n message: errorUtil.toString(message),\n });\n }\n max(maxDate, message) {\n return this._addCheck({\n kind: \"max\",\n value: maxDate.getTime(),\n message: errorUtil.toString(message),\n });\n }\n get minDate() {\n let min = null;\n for (const ch of this._def.checks) {\n if (ch.kind === \"min\") {\n if (min === null || ch.value > min)\n min = ch.value;\n }\n }\n return min != null ? new Date(min) : null;\n }\n get maxDate() {\n let max = null;\n for (const ch of this._def.checks) {\n if (ch.kind === \"max\") {\n if (max === null || ch.value < max)\n max = ch.value;\n }\n }\n return max != null ? new Date(max) : null;\n }\n}\nZodDate.create = (params) => {\n return new ZodDate({\n checks: [],\n coerce: (params === null || params === void 0 ? void 0 : params.coerce) || false,\n typeName: ZodFirstPartyTypeKind.ZodDate,\n ...processCreateParams(params),\n });\n};\nclass ZodSymbol extends ZodType {\n _parse(input) {\n const parsedType = this._getType(input);\n if (parsedType !== ZodParsedType.symbol) {\n const ctx = this._getOrReturnCtx(input);\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_type,\n expected: ZodParsedType.symbol,\n received: ctx.parsedType,\n });\n return INVALID;\n }\n return OK(input.data);\n }\n}\nZodSymbol.create = (params) => {\n return new ZodSymbol({\n typeName: ZodFirstPartyTypeKind.ZodSymbol,\n ...processCreateParams(params),\n });\n};\nclass ZodUndefined extends ZodType {\n _parse(input) {\n const parsedType = this._getType(input);\n if (parsedType !== ZodParsedType.undefined) {\n const ctx = this._getOrReturnCtx(input);\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_type,\n expected: ZodParsedType.undefined,\n received: ctx.parsedType,\n });\n return INVALID;\n }\n return OK(input.data);\n }\n}\nZodUndefined.create = (params) => {\n return new ZodUndefined({\n typeName: ZodFirstPartyTypeKind.ZodUndefined,\n ...processCreateParams(params),\n });\n};\nclass ZodNull extends ZodType {\n _parse(input) {\n const parsedType = this._getType(input);\n if (parsedType !== ZodParsedType.null) {\n const ctx = this._getOrReturnCtx(input);\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_type,\n expected: ZodParsedType.null,\n received: ctx.parsedType,\n });\n return INVALID;\n }\n return OK(input.data);\n }\n}\nZodNull.create = (params) => {\n return new ZodNull({\n typeName: ZodFirstPartyTypeKind.ZodNull,\n ...processCreateParams(params),\n });\n};\nclass ZodAny extends ZodType {\n constructor() {\n super(...arguments);\n // to prevent instances of other classes from extending ZodAny. this causes issues with catchall in ZodObject.\n this._any = true;\n }\n _parse(input) {\n return OK(input.data);\n }\n}\nZodAny.create = (params) => {\n return new ZodAny({\n typeName: ZodFirstPartyTypeKind.ZodAny,\n ...processCreateParams(params),\n });\n};\nclass ZodUnknown extends ZodType {\n constructor() {\n super(...arguments);\n // required\n this._unknown = true;\n }\n _parse(input) {\n return OK(input.data);\n }\n}\nZodUnknown.create = (params) => {\n return new ZodUnknown({\n typeName: ZodFirstPartyTypeKind.ZodUnknown,\n ...processCreateParams(params),\n });\n};\nclass ZodNever extends ZodType {\n _parse(input) {\n const ctx = this._getOrReturnCtx(input);\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_type,\n expected: ZodParsedType.never,\n received: ctx.parsedType,\n });\n return INVALID;\n }\n}\nZodNever.create = (params) => {\n return new ZodNever({\n typeName: ZodFirstPartyTypeKind.ZodNever,\n ...processCreateParams(params),\n });\n};\nclass ZodVoid extends ZodType {\n _parse(input) {\n const parsedType = this._getType(input);\n if (parsedType !== ZodParsedType.undefined) {\n const ctx = this._getOrReturnCtx(input);\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_type,\n expected: ZodParsedType.void,\n received: ctx.parsedType,\n });\n return INVALID;\n }\n return OK(input.data);\n }\n}\nZodVoid.create = (params) => {\n return new ZodVoid({\n typeName: ZodFirstPartyTypeKind.ZodVoid,\n ...processCreateParams(params),\n });\n};\nclass ZodArray extends ZodType {\n _parse(input) {\n const { ctx, status } = this._processInputParams(input);\n const def = this._def;\n if (ctx.parsedType !== ZodParsedType.array) {\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_type,\n expected: ZodParsedType.array,\n received: ctx.parsedType,\n });\n return INVALID;\n }\n if (def.exactLength !== null) {\n const tooBig = ctx.data.length > def.exactLength.value;\n const tooSmall = ctx.data.length < def.exactLength.value;\n if (tooBig || tooSmall) {\n addIssueToContext(ctx, {\n code: tooBig ? ZodIssueCode.too_big : ZodIssueCode.too_small,\n minimum: (tooSmall ? def.exactLength.value : undefined),\n maximum: (tooBig ? def.exactLength.value : undefined),\n type: \"array\",\n inclusive: true,\n exact: true,\n message: def.exactLength.message,\n });\n status.dirty();\n }\n }\n if (def.minLength !== null) {\n if (ctx.data.length < def.minLength.value) {\n addIssueToContext(ctx, {\n code: ZodIssueCode.too_small,\n minimum: def.minLength.value,\n type: \"array\",\n inclusive: true,\n exact: false,\n message: def.minLength.message,\n });\n status.dirty();\n }\n }\n if (def.maxLength !== null) {\n if (ctx.data.length > def.maxLength.value) {\n addIssueToContext(ctx, {\n code: ZodIssueCode.too_big,\n maximum: def.maxLength.value,\n type: \"array\",\n inclusive: true,\n exact: false,\n message: def.maxLength.message,\n });\n status.dirty();\n }\n }\n if (ctx.common.async) {\n return Promise.all([...ctx.data].map((item, i) => {\n return def.type._parseAsync(new ParseInputLazyPath(ctx, item, ctx.path, i));\n })).then((result) => {\n return ParseStatus.mergeArray(status, result);\n });\n }\n const result = [...ctx.data].map((item, i) => {\n return def.type._parseSync(new ParseInputLazyPath(ctx, item, ctx.path, i));\n });\n return ParseStatus.mergeArray(status, result);\n }\n get element() {\n return this._def.type;\n }\n min(minLength, message) {\n return new ZodArray({\n ...this._def,\n minLength: { value: minLength, message: errorUtil.toString(message) },\n });\n }\n max(maxLength, message) {\n return new ZodArray({\n ...this._def,\n maxLength: { value: maxLength, message: errorUtil.toString(message) },\n });\n }\n length(len, message) {\n return new ZodArray({\n ...this._def,\n exactLength: { value: len, message: errorUtil.toString(message) },\n });\n }\n nonempty(message) {\n return this.min(1, message);\n }\n}\nZodArray.create = (schema, params) => {\n return new ZodArray({\n type: schema,\n minLength: null,\n maxLength: null,\n exactLength: null,\n typeName: ZodFirstPartyTypeKind.ZodArray,\n ...processCreateParams(params),\n });\n};\nfunction deepPartialify(schema) {\n if (schema instanceof ZodObject) {\n const newShape = {};\n for (const key in schema.shape) {\n const fieldSchema = schema.shape[key];\n newShape[key] = ZodOptional.create(deepPartialify(fieldSchema));\n }\n return new ZodObject({\n ...schema._def,\n shape: () => newShape,\n });\n }\n else if (schema instanceof ZodArray) {\n return new ZodArray({\n ...schema._def,\n type: deepPartialify(schema.element),\n });\n }\n else if (schema instanceof ZodOptional) {\n return ZodOptional.create(deepPartialify(schema.unwrap()));\n }\n else if (schema instanceof ZodNullable) {\n return ZodNullable.create(deepPartialify(schema.unwrap()));\n }\n else if (schema instanceof ZodTuple) {\n return ZodTuple.create(schema.items.map((item) => deepPartialify(item)));\n }\n else {\n return schema;\n }\n}\nclass ZodObject extends ZodType {\n constructor() {\n super(...arguments);\n this._cached = null;\n /**\n * @deprecated In most cases, this is no longer needed - unknown properties are now silently stripped.\n * If you want to pass through unknown properties, use `.passthrough()` instead.\n */\n this.nonstrict = this.passthrough;\n // extend<\n // Augmentation extends ZodRawShape,\n // NewOutput extends util.flatten<{\n // [k in keyof Augmentation | keyof Output]: k extends keyof Augmentation\n // ? Augmentation[k][\"_output\"]\n // : k extends keyof Output\n // ? Output[k]\n // : never;\n // }>,\n // NewInput extends util.flatten<{\n // [k in keyof Augmentation | keyof Input]: k extends keyof Augmentation\n // ? Augmentation[k][\"_input\"]\n // : k extends keyof Input\n // ? Input[k]\n // : never;\n // }>\n // >(\n // augmentation: Augmentation\n // ): ZodObject<\n // extendShape<T, Augmentation>,\n // UnknownKeys,\n // Catchall,\n // NewOutput,\n // NewInput\n // > {\n // return new ZodObject({\n // ...this._def,\n // shape: () => ({\n // ...this._def.shape(),\n // ...augmentation,\n // }),\n // }) as any;\n // }\n /**\n * @deprecated Use `.extend` instead\n * */\n this.augment = this.extend;\n }\n _getCached() {\n if (this._cached !== null)\n return this._cached;\n const shape = this._def.shape();\n const keys = util.objectKeys(shape);\n return (this._cached = { shape, keys });\n }\n _parse(input) {\n const parsedType = this._getType(input);\n if (parsedType !== ZodParsedType.object) {\n const ctx = this._getOrReturnCtx(input);\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_type,\n expected: ZodParsedType.object,\n received: ctx.parsedType,\n });\n return INVALID;\n }\n const { status, ctx } = this._processInputParams(input);\n const { shape, keys: shapeKeys } = this._getCached();\n const extraKeys = [];\n if (!(this._def.catchall instanceof ZodNever &&\n this._def.unknownKeys === \"strip\")) {\n for (const key in ctx.data) {\n if (!shapeKeys.includes(key)) {\n extraKeys.push(key);\n }\n }\n }\n const pairs = [];\n for (const key of shapeKeys) {\n const keyValidator = shape[key];\n const value = ctx.data[key];\n pairs.push({\n key: { status: \"valid\", value: key },\n value: keyValidator._parse(new ParseInputLazyPath(ctx, value, ctx.path, key)),\n alwaysSet: key in ctx.data,\n });\n }\n if (this._def.catchall instanceof ZodNever) {\n const unknownKeys = this._def.unknownKeys;\n if (unknownKeys === \"passthrough\") {\n for (const key of extraKeys) {\n pairs.push({\n key: { status: \"valid\", value: key },\n value: { status: \"valid\", value: ctx.data[key] },\n });\n }\n }\n else if (unknownKeys === \"strict\") {\n if (extraKeys.length > 0) {\n addIssueToContext(ctx, {\n code: ZodIssueCode.unrecognized_keys,\n keys: extraKeys,\n });\n status.dirty();\n }\n }\n else if (unknownKeys === \"strip\") ;\n else {\n throw new Error(`Internal ZodObject error: invalid unknownKeys value.`);\n }\n }\n else {\n // run catchall validation\n const catchall = this._def.catchall;\n for (const key of extraKeys) {\n const value = ctx.data[key];\n pairs.push({\n key: { status: \"valid\", value: key },\n value: catchall._parse(new ParseInputLazyPath(ctx, value, ctx.path, key) //, ctx.child(key), value, getParsedType(value)\n ),\n alwaysSet: key in ctx.data,\n });\n }\n }\n if (ctx.common.async) {\n return Promise.resolve()\n .then(async () => {\n const syncPairs = [];\n for (const pair of pairs) {\n const key = await pair.key;\n syncPairs.push({\n key,\n value: await pair.value,\n alwaysSet: pair.alwaysSet,\n });\n }\n return syncPairs;\n })\n .then((syncPairs) => {\n return ParseStatus.mergeObjectSync(status, syncPairs);\n });\n }\n else {\n return ParseStatus.mergeObjectSync(status, pairs);\n }\n }\n get shape() {\n return this._def.shape();\n }\n strict(message) {\n errorUtil.errToObj;\n return new ZodObject({\n ...this._def,\n unknownKeys: \"strict\",\n ...(message !== undefined\n ? {\n errorMap: (issue, ctx) => {\n var _a, _b, _c, _d;\n const defaultError = (_c = (_b = (_a = this._def).errorMap) === null || _b === void 0 ? void 0 : _b.call(_a, issue, ctx).message) !== null && _c !== void 0 ? _c : ctx.defaultError;\n if (issue.code === \"unrecognized_keys\")\n return {\n message: (_d = errorUtil.errToObj(message).message) !== null && _d !== void 0 ? _d : defaultError,\n };\n return {\n message: defaultError,\n };\n },\n }\n : {}),\n });\n }\n strip() {\n return new ZodObject({\n ...this._def,\n unknownKeys: \"strip\",\n });\n }\n passthrough() {\n return new ZodObject({\n ...this._def,\n unknownKeys: \"passthrough\",\n });\n }\n // const AugmentFactory =\n // <Def extends ZodObjectDef>(def: Def) =>\n // <Augmentation extends ZodRawShape>(\n // augmentation: Augmentation\n // ): ZodObject<\n // extendShape<ReturnType<Def[\"shape\"]>, Augmentation>,\n // Def[\"unknownKeys\"],\n // Def[\"catchall\"]\n // > => {\n // return new ZodObject({\n // ...def,\n // shape: () => ({\n // ...def.shape(),\n // ...augmentation,\n // }),\n // }) as any;\n // };\n extend(augmentation) {\n return new ZodObject({\n ...this._def,\n shape: () => ({\n ...this._def.shape(),\n ...augmentation,\n }),\n });\n }\n /**\n * Prior to zod@1.0.12 there was a bug in the\n * inferred type of merged objects. Please\n * upgrade if you are experiencing issues.\n */\n merge(merging) {\n const merged = new ZodObject({\n unknownKeys: merging._def.unknownKeys,\n catchall: merging._def.catchall,\n shape: () => ({\n ...this._def.shape(),\n ...merging._def.shape(),\n }),\n typeName: ZodFirstPartyTypeKind.ZodObject,\n });\n return merged;\n }\n // merge<\n // Incoming extends AnyZodObject,\n // Augmentation extends Incoming[\"shape\"],\n // NewOutput extends {\n // [k in keyof Augmentation | keyof Output]: k extends keyof Augmentation\n // ? Augmentation[k][\"_output\"]\n // : k extends keyof Output\n // ? Output[k]\n // : never;\n // },\n // NewInput extends {\n // [k in keyof Augmentation | keyof Input]: k extends keyof Augmentation\n // ? Augmentation[k][\"_input\"]\n // : k extends keyof Input\n // ? Input[k]\n // : never;\n // }\n // >(\n // merging: Incoming\n // ): ZodObject<\n // extendShape<T, ReturnType<Incoming[\"_def\"][\"shape\"]>>,\n // Incoming[\"_def\"][\"unknownKeys\"],\n // Incoming[\"_def\"][\"catchall\"],\n // NewOutput,\n // NewInput\n // > {\n // const merged: any = new ZodObject({\n // unknownKeys: merging._def.unknownKeys,\n // catchall: merging._def.catchall,\n // shape: () =>\n // objectUtil.mergeShapes(this._def.shape(), merging._def.shape()),\n // typeName: ZodFirstPartyTypeKind.ZodObject,\n // }) as any;\n // return merged;\n // }\n setKey(key, schema) {\n return this.augment({ [key]: schema });\n }\n // merge<Incoming extends AnyZodObject>(\n // merging: Incoming\n // ): //ZodObject<T & Incoming[\"_shape\"], UnknownKeys, Catchall> = (merging) => {\n // ZodObject<\n // extendShape<T, ReturnType<Incoming[\"_def\"][\"shape\"]>>,\n // Incoming[\"_def\"][\"unknownKeys\"],\n // Incoming[\"_def\"][\"catchall\"]\n // > {\n // // const mergedShape = objectUtil.mergeShapes(\n // // this._def.shape(),\n // // merging._def.shape()\n // // );\n // const merged: any = new ZodObject({\n // unknownKeys: merging._def.unknownKeys,\n // catchall: merging._def.catchall,\n // shape: () =>\n // objectUtil.mergeShapes(this._def.shape(), merging._def.shape()),\n // typeName: ZodFirstPartyTypeKind.ZodObject,\n // }) as any;\n // return merged;\n // }\n catchall(index) {\n return new ZodObject({\n ...this._def,\n catchall: index,\n });\n }\n pick(mask) {\n const shape = {};\n util.objectKeys(mask).forEach((key) => {\n if (mask[key] && this.shape[key]) {\n shape[key] = this.shape[key];\n }\n });\n return new ZodObject({\n ...this._def,\n shape: () => shape,\n });\n }\n omit(mask) {\n const shape = {};\n util.objectKeys(this.shape).forEach((key) => {\n if (!mask[key]) {\n shape[key] = this.shape[key];\n }\n });\n return new ZodObject({\n ...this._def,\n shape: () => shape,\n });\n }\n /**\n * @deprecated\n */\n deepPartial() {\n return deepPartialify(this);\n }\n partial(mask) {\n const newShape = {};\n util.objectKeys(this.shape).forEach((key) => {\n const fieldSchema = this.shape[key];\n if (mask && !mask[key]) {\n newShape[key] = fieldSchema;\n }\n else {\n newShape[key] = fieldSchema.optional();\n }\n });\n return new ZodObject({\n ...this._def,\n shape: () => newShape,\n });\n }\n required(mask) {\n const newShape = {};\n util.objectKeys(this.shape).forEach((key) => {\n if (mask && !mask[key]) {\n newShape[key] = this.shape[key];\n }\n else {\n const fieldSchema = this.shape[key];\n let newField = fieldSchema;\n while (newField instanceof ZodOptional) {\n newField = newField._def.innerType;\n }\n newShape[key] = newField;\n }\n });\n return new ZodObject({\n ...this._def,\n shape: () => newShape,\n });\n }\n keyof() {\n return createZodEnum(util.objectKeys(this.shape));\n }\n}\nZodObject.create = (shape, params) => {\n return new ZodObject({\n shape: () => shape,\n unknownKeys: \"strip\",\n catchall: ZodNever.create(),\n typeName: ZodFirstPartyTypeKind.ZodObject,\n ...processCreateParams(params),\n });\n};\nZodObject.strictCreate = (shape, params) => {\n return new ZodObject({\n shape: () => shape,\n unknownKeys: \"strict\",\n catchall: ZodNever.create(),\n typeName: ZodFirstPartyTypeKind.ZodObject,\n ...processCreateParams(params),\n });\n};\nZodObject.lazycreate = (shape, params) => {\n return new ZodObject({\n shape,\n unknownKeys: \"strip\",\n catchall: ZodNever.create(),\n typeName: ZodFirstPartyTypeKind.ZodObject,\n ...processCreateParams(params),\n });\n};\nclass ZodUnion extends ZodType {\n _parse(input) {\n const { ctx } = this._processInputParams(input);\n const options = this._def.options;\n function handleResults(results) {\n // return first issue-free validation if it exists\n for (const result of results) {\n if (result.result.status === \"valid\") {\n return result.result;\n }\n }\n for (const result of results) {\n if (result.result.status === \"dirty\") {\n // add issues from dirty option\n ctx.common.issues.push(...result.ctx.common.issues);\n return result.result;\n }\n }\n // return invalid\n const unionErrors = results.map((result) => new ZodError(result.ctx.common.issues));\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_union,\n unionErrors,\n });\n return INVALID;\n }\n if (ctx.common.async) {\n return Promise.all(options.map(async (option) => {\n const childCtx = {\n ...ctx,\n common: {\n ...ctx.common,\n issues: [],\n },\n parent: null,\n };\n return {\n result: await option._parseAsync({\n data: ctx.data,\n path: ctx.path,\n parent: childCtx,\n }),\n ctx: childCtx,\n };\n })).then(handleResults);\n }\n else {\n let dirty = undefined;\n const issues = [];\n for (const option of options) {\n const childCtx = {\n ...ctx,\n common: {\n ...ctx.common,\n issues: [],\n },\n parent: null,\n };\n const result = option._parseSync({\n data: ctx.data,\n path: ctx.path,\n parent: childCtx,\n });\n if (result.status === \"valid\") {\n return result;\n }\n else if (result.status === \"dirty\" && !dirty) {\n dirty = { result, ctx: childCtx };\n }\n if (childCtx.common.issues.length) {\n issues.push(childCtx.common.issues);\n }\n }\n if (dirty) {\n ctx.common.issues.push(...dirty.ctx.common.issues);\n return dirty.result;\n }\n const unionErrors = issues.map((issues) => new ZodError(issues));\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_union,\n unionErrors,\n });\n return INVALID;\n }\n }\n get options() {\n return this._def.options;\n }\n}\nZodUnion.create = (types, params) => {\n return new ZodUnion({\n options: types,\n typeName: ZodFirstPartyTypeKind.ZodUnion,\n ...processCreateParams(params),\n });\n};\n/////////////////////////////////////////////////////\n/////////////////////////////////////////////////////\n////////// //////////\n////////// ZodDiscriminatedUnion //////////\n////////// //////////\n/////////////////////////////////////////////////////\n/////////////////////////////////////////////////////\nconst getDiscriminator = (type) => {\n if (type instanceof ZodLazy) {\n return getDiscriminator(type.schema);\n }\n else if (type instanceof ZodEffects) {\n return getDiscriminator(type.innerType());\n }\n else if (type instanceof ZodLiteral) {\n return [type.value];\n }\n else if (type instanceof ZodEnum) {\n return type.options;\n }\n else if (type instanceof ZodNativeEnum) {\n // eslint-disable-next-line ban/ban\n return Object.keys(type.enum);\n }\n else if (type instanceof ZodDefault) {\n return getDiscriminator(type._def.innerType);\n }\n else if (type instanceof ZodUndefined) {\n return [undefined];\n }\n else if (type instanceof ZodNull) {\n return [null];\n }\n else {\n return null;\n }\n};\nclass ZodDiscriminatedUnion extends ZodType {\n _parse(input) {\n const { ctx } = this._processInputParams(input);\n if (ctx.parsedType !== ZodParsedType.object) {\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_type,\n expected: ZodParsedType.object,\n received: ctx.parsedType,\n });\n return INVALID;\n }\n const discriminator = this.discriminator;\n const discriminatorValue = ctx.data[discriminator];\n const option = this.optionsMap.get(discriminatorValue);\n if (!option) {\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_union_discriminator,\n options: Array.from(this.optionsMap.keys()),\n path: [discriminator],\n });\n return INVALID;\n }\n if (ctx.common.async) {\n return option._parseAsync({\n data: ctx.data,\n path: ctx.path,\n parent: ctx,\n });\n }\n else {\n return option._parseSync({\n data: ctx.data,\n path: ctx.path,\n parent: ctx,\n });\n }\n }\n get discriminator() {\n return this._def.discriminator;\n }\n get options() {\n return this._def.options;\n }\n get optionsMap() {\n return this._def.optionsMap;\n }\n /**\n * The constructor of the discriminated union schema. Its behaviour is very similar to that of the normal z.union() constructor.\n * However, it only allows a union of objects, all of which need to share a discriminator property. This property must\n * have a different value for each object in the union.\n * @param discriminator the name of the discriminator property\n * @param types an array of object schemas\n * @param params\n */\n static create(discriminator, options, params) {\n // Get all the valid discriminator values\n const optionsMap = new Map();\n // try {\n for (const type of options) {\n const discriminatorValues = getDiscriminator(type.shape[discriminator]);\n if (!discriminatorValues) {\n throw new Error(`A discriminator value for key \\`${discriminator}\\` could not be extracted from all schema options`);\n }\n for (const value of discriminatorValues) {\n if (optionsMap.has(value)) {\n throw new Error(`Discriminator property ${String(discriminator)} has duplicate value ${String(value)}`);\n }\n optionsMap.set(value, type);\n }\n }\n return new ZodDiscriminatedUnion({\n typeName: ZodFirstPartyTypeKind.ZodDiscriminatedUnion,\n discriminator,\n options,\n optionsMap,\n ...processCreateParams(params),\n });\n }\n}\nfunction mergeValues(a, b) {\n const aType = getParsedType(a);\n const bType = getParsedType(b);\n if (a === b) {\n return { valid: true, data: a };\n }\n else if (aType === ZodParsedType.object && bType === ZodParsedType.object) {\n const bKeys = util.objectKeys(b);\n const sharedKeys = util\n .objectKeys(a)\n .filter((key) => bKeys.indexOf(key) !== -1);\n const newObj = { ...a, ...b };\n for (const key of sharedKeys) {\n const sharedValue = mergeValues(a[key], b[key]);\n if (!sharedValue.valid) {\n return { valid: false };\n }\n newObj[key] = sharedValue.data;\n }\n return { valid: true, data: newObj };\n }\n else if (aType === ZodParsedType.array && bType === ZodParsedType.array) {\n if (a.length !== b.length) {\n return { valid: false };\n }\n const newArray = [];\n for (let index = 0; index < a.length; index++) {\n const itemA = a[index];\n const itemB = b[index];\n const sharedValue = mergeValues(itemA, itemB);\n if (!sharedValue.valid) {\n return { valid: false };\n }\n newArray.push(sharedValue.data);\n }\n return { valid: true, data: newArray };\n }\n else if (aType === ZodParsedType.date &&\n bType === ZodParsedType.date &&\n +a === +b) {\n return { valid: true, data: a };\n }\n else {\n return { valid: false };\n }\n}\nclass ZodIntersection extends ZodType {\n _parse(input) {\n const { status, ctx } = this._processInputParams(input);\n const handleParsed = (parsedLeft, parsedRight) => {\n if (isAborted(parsedLeft) || isAborted(parsedRight)) {\n return INVALID;\n }\n const merged = mergeValues(parsedLeft.value, parsedRight.value);\n if (!merged.valid) {\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_intersection_types,\n });\n return INVALID;\n }\n if (isDirty(parsedLeft) || isDirty(parsedRight)) {\n status.dirty();\n }\n return { status: status.value, value: merged.data };\n };\n if (ctx.common.async) {\n return Promise.all([\n this._def.left._parseAsync({\n data: ctx.data,\n path: ctx.path,\n parent: ctx,\n }),\n this._def.right._parseAsync({\n data: ctx.data,\n path: ctx.path,\n parent: ctx,\n }),\n ]).then(([left, right]) => handleParsed(left, right));\n }\n else {\n return handleParsed(this._def.left._parseSync({\n data: ctx.data,\n path: ctx.path,\n parent: ctx,\n }), this._def.right._parseSync({\n data: ctx.data,\n path: ctx.path,\n parent: ctx,\n }));\n }\n }\n}\nZodIntersection.create = (left, right, params) => {\n return new ZodIntersection({\n left: left,\n right: right,\n typeName: ZodFirstPartyTypeKind.ZodIntersection,\n ...processCreateParams(params),\n });\n};\nclass ZodTuple extends ZodType {\n _parse(input) {\n const { status, ctx } = this._processInputParams(input);\n if (ctx.parsedType !== ZodParsedType.array) {\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_type,\n expected: ZodParsedType.array,\n received: ctx.parsedType,\n });\n return INVALID;\n }\n if (ctx.data.length < this._def.items.length) {\n addIssueToContext(ctx, {\n code: ZodIssueCode.too_small,\n minimum: this._def.items.length,\n inclusive: true,\n exact: false,\n type: \"array\",\n });\n return INVALID;\n }\n const rest = this._def.rest;\n if (!rest && ctx.data.length > this._def.items.length) {\n addIssueToContext(ctx, {\n code: ZodIssueCode.too_big,\n maximum: this._def.items.length,\n inclusive: true,\n exact: false,\n type: \"array\",\n });\n status.dirty();\n }\n const items = [...ctx.data]\n .map((item, itemIndex) => {\n const schema = this._def.items[itemIndex] || this._def.rest;\n if (!schema)\n return null;\n return schema._parse(new ParseInputLazyPath(ctx, item, ctx.path, itemIndex));\n })\n .filter((x) => !!x); // filter nulls\n if (ctx.common.async) {\n return Promise.all(items).then((results) => {\n return ParseStatus.mergeArray(status, results);\n });\n }\n else {\n return ParseStatus.mergeArray(status, items);\n }\n }\n get items() {\n return this._def.items;\n }\n rest(rest) {\n return new ZodTuple({\n ...this._def,\n rest,\n });\n }\n}\nZodTuple.create = (schemas, params) => {\n if (!Array.isArray(schemas)) {\n throw new Error(\"You must pass an array of schemas to z.tuple([ ... ])\");\n }\n return new ZodTuple({\n items: schemas,\n typeName: ZodFirstPartyTypeKind.ZodTuple,\n rest: null,\n ...processCreateParams(params),\n });\n};\nclass ZodRecord extends ZodType {\n get keySchema() {\n return this._def.keyType;\n }\n get valueSchema() {\n return this._def.valueType;\n }\n _parse(input) {\n const { status, ctx } = this._processInputParams(input);\n if (ctx.parsedType !== ZodParsedType.object) {\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_type,\n expected: ZodParsedType.object,\n received: ctx.parsedType,\n });\n return INVALID;\n }\n const pairs = [];\n const keyType = this._def.keyType;\n const valueType = this._def.valueType;\n for (const key in ctx.data) {\n pairs.push({\n key: keyType._parse(new ParseInputLazyPath(ctx, key, ctx.path, key)),\n value: valueType._parse(new ParseInputLazyPath(ctx, ctx.data[key], ctx.path, key)),\n });\n }\n if (ctx.common.async) {\n return ParseStatus.mergeObjectAsync(status, pairs);\n }\n else {\n return ParseStatus.mergeObjectSync(status, pairs);\n }\n }\n get element() {\n return this._def.valueType;\n }\n static create(first, second, third) {\n if (second instanceof ZodType) {\n return new ZodRecord({\n keyType: first,\n valueType: second,\n typeName: ZodFirstPartyTypeKind.ZodRecord,\n ...processCreateParams(third),\n });\n }\n return new ZodRecord({\n keyType: ZodString.create(),\n valueType: first,\n typeName: ZodFirstPartyTypeKind.ZodRecord,\n ...processCreateParams(second),\n });\n }\n}\nclass ZodMap extends ZodType {\n get keySchema() {\n return this._def.keyType;\n }\n get valueSchema() {\n return this._def.valueType;\n }\n _parse(input) {\n const { status, ctx } = this._processInputParams(input);\n if (ctx.parsedType !== ZodParsedType.map) {\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_type,\n expected: ZodParsedType.map,\n received: ctx.parsedType,\n });\n return INVALID;\n }\n const keyType = this._def.keyType;\n const valueType = this._def.valueType;\n const pairs = [...ctx.data.entries()].map(([key, value], index) => {\n return {\n key: keyType._parse(new ParseInputLazyPath(ctx, key, ctx.path, [index, \"key\"])),\n value: valueType._parse(new ParseInputLazyPath(ctx, value, ctx.path, [index, \"value\"])),\n };\n });\n if (ctx.common.async) {\n const finalMap = new Map();\n return Promise.resolve().then(async () => {\n for (const pair of pairs) {\n const key = await pair.key;\n const value = await pair.value;\n if (key.status === \"aborted\" || value.status === \"aborted\") {\n return INVALID;\n }\n if (key.status === \"dirty\" || value.status === \"dirty\") {\n status.dirty();\n }\n finalMap.set(key.value, value.value);\n }\n return { status: status.value, value: finalMap };\n });\n }\n else {\n const finalMap = new Map();\n for (const pair of pairs) {\n const key = pair.key;\n const value = pair.value;\n if (key.status === \"aborted\" || value.status === \"aborted\") {\n return INVALID;\n }\n if (key.status === \"dirty\" || value.status === \"dirty\") {\n status.dirty();\n }\n finalMap.set(key.value, value.value);\n }\n return { status: status.value, value: finalMap };\n }\n }\n}\nZodMap.create = (keyType, valueType, params) => {\n return new ZodMap({\n valueType,\n keyType,\n typeName: ZodFirstPartyTypeKind.ZodMap,\n ...processCreateParams(params),\n });\n};\nclass ZodSet extends ZodType {\n _parse(input) {\n const { status, ctx } = this._processInputParams(input);\n if (ctx.parsedType !== ZodParsedType.set) {\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_type,\n expected: ZodParsedType.set,\n received: ctx.parsedType,\n });\n return INVALID;\n }\n const def = this._def;\n if (def.minSize !== null) {\n if (ctx.data.size < def.minSize.value) {\n addIssueToContext(ctx, {\n code: ZodIssueCode.too_small,\n minimum: def.minSize.value,\n type: \"set\",\n inclusive: true,\n exact: false,\n message: def.minSize.message,\n });\n status.dirty();\n }\n }\n if (def.maxSize !== null) {\n if (ctx.data.size > def.maxSize.value) {\n addIssueToContext(ctx, {\n code: ZodIssueCode.too_big,\n maximum: def.maxSize.value,\n type: \"set\",\n inclusive: true,\n exact: false,\n message: def.maxSize.message,\n });\n status.dirty();\n }\n }\n const valueType = this._def.valueType;\n function finalizeSet(elements) {\n const parsedSet = new Set();\n for (const element of elements) {\n if (element.status === \"aborted\")\n return INVALID;\n if (element.status === \"dirty\")\n status.dirty();\n parsedSet.add(element.value);\n }\n return { status: status.value, value: parsedSet };\n }\n const elements = [...ctx.data.values()].map((item, i) => valueType._parse(new ParseInputLazyPath(ctx, item, ctx.path, i)));\n if (ctx.common.async) {\n return Promise.all(elements).then((elements) => finalizeSet(elements));\n }\n else {\n return finalizeSet(elements);\n }\n }\n min(minSize, message) {\n return new ZodSet({\n ...this._def,\n minSize: { value: minSize, message: errorUtil.toString(message) },\n });\n }\n max(maxSize, message) {\n return new ZodSet({\n ...this._def,\n maxSize: { value: maxSize, message: errorUtil.toString(message) },\n });\n }\n size(size, message) {\n return this.min(size, message).max(size, message);\n }\n nonempty(message) {\n return this.min(1, message);\n }\n}\nZodSet.create = (valueType, params) => {\n return new ZodSet({\n valueType,\n minSize: null,\n maxSize: null,\n typeName: ZodFirstPartyTypeKind.ZodSet,\n ...processCreateParams(params),\n });\n};\nclass ZodFunction extends ZodType {\n constructor() {\n super(...arguments);\n this.validate = this.implement;\n }\n _parse(input) {\n const { ctx } = this._processInputParams(input);\n if (ctx.parsedType !== ZodParsedType.function) {\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_type,\n expected: ZodParsedType.function,\n received: ctx.parsedType,\n });\n return INVALID;\n }\n function makeArgsIssue(args, error) {\n return makeIssue({\n data: args,\n path: ctx.path,\n errorMaps: [\n ctx.common.contextualErrorMap,\n ctx.schemaErrorMap,\n getErrorMap(),\n errorMap,\n ].filter((x) => !!x),\n issueData: {\n code: ZodIssueCode.invalid_arguments,\n argumentsError: error,\n },\n });\n }\n function makeReturnsIssue(returns, error) {\n return makeIssue({\n data: returns,\n path: ctx.path,\n errorMaps: [\n ctx.common.contextualErrorMap,\n ctx.schemaErrorMap,\n getErrorMap(),\n errorMap,\n ].filter((x) => !!x),\n issueData: {\n code: ZodIssueCode.invalid_return_type,\n returnTypeError: error,\n },\n });\n }\n const params = { errorMap: ctx.common.contextualErrorMap };\n const fn = ctx.data;\n if (this._def.returns instanceof ZodPromise) {\n // Would love a way to avoid disabling this rule, but we need\n // an alias (using an arrow function was what caused 2651).\n // eslint-disable-next-line @typescript-eslint/no-this-alias\n const me = this;\n return OK(async function (...args) {\n const error = new ZodError([]);\n const parsedArgs = await me._def.args\n .parseAsync(args, params)\n .catch((e) => {\n error.addIssue(makeArgsIssue(args, e));\n throw error;\n });\n const result = await Reflect.apply(fn, this, parsedArgs);\n const parsedReturns = await me._def.returns._def.type\n .parseAsync(result, params)\n .catch((e) => {\n error.addIssue(makeReturnsIssue(result, e));\n throw error;\n });\n return parsedReturns;\n });\n }\n else {\n // Would love a way to avoid disabling this rule, but we need\n // an alias (using an arrow function was what caused 2651).\n // eslint-disable-next-line @typescript-eslint/no-this-alias\n const me = this;\n return OK(function (...args) {\n const parsedArgs = me._def.args.safeParse(args, params);\n if (!parsedArgs.success) {\n throw new ZodError([makeArgsIssue(args, parsedArgs.error)]);\n }\n const result = Reflect.apply(fn, this, parsedArgs.data);\n const parsedReturns = me._def.returns.safeParse(result, params);\n if (!parsedReturns.success) {\n throw new ZodError([makeReturnsIssue(result, parsedReturns.error)]);\n }\n return parsedReturns.data;\n });\n }\n }\n parameters() {\n return this._def.args;\n }\n returnType() {\n return this._def.returns;\n }\n args(...items) {\n return new ZodFunction({\n ...this._def,\n args: ZodTuple.create(items).rest(ZodUnknown.create()),\n });\n }\n returns(returnType) {\n return new ZodFunction({\n ...this._def,\n returns: returnType,\n });\n }\n implement(func) {\n const validatedFunc = this.parse(func);\n return validatedFunc;\n }\n strictImplement(func) {\n const validatedFunc = this.parse(func);\n return validatedFunc;\n }\n static create(args, returns, params) {\n return new ZodFunction({\n args: (args\n ? args\n : ZodTuple.create([]).rest(ZodUnknown.create())),\n returns: returns || ZodUnknown.create(),\n typeName: ZodFirstPartyTypeKind.ZodFunction,\n ...processCreateParams(params),\n });\n }\n}\nclass ZodLazy extends ZodType {\n get schema() {\n return this._def.getter();\n }\n _parse(input) {\n const { ctx } = this._processInputParams(input);\n const lazySchema = this._def.getter();\n return lazySchema._parse({ data: ctx.data, path: ctx.path, parent: ctx });\n }\n}\nZodLazy.create = (getter, params) => {\n return new ZodLazy({\n getter: getter,\n typeName: ZodFirstPartyTypeKind.ZodLazy,\n ...processCreateParams(params),\n });\n};\nclass ZodLiteral extends ZodType {\n _parse(input) {\n if (input.data !== this._def.value) {\n const ctx = this._getOrReturnCtx(input);\n addIssueToContext(ctx, {\n received: ctx.data,\n code: ZodIssueCode.invalid_literal,\n expected: this._def.value,\n });\n return INVALID;\n }\n return { status: \"valid\", value: input.data };\n }\n get value() {\n return this._def.value;\n }\n}\nZodLiteral.create = (value, params) => {\n return new ZodLiteral({\n value: value,\n typeName: ZodFirstPartyTypeKind.ZodLiteral,\n ...processCreateParams(params),\n });\n};\nfunction createZodEnum(values, params) {\n return new ZodEnum({\n values,\n typeName: ZodFirstPartyTypeKind.ZodEnum,\n ...processCreateParams(params),\n });\n}\nclass ZodEnum extends ZodType {\n _parse(input) {\n if (typeof input.data !== \"string\") {\n const ctx = this._getOrReturnCtx(input);\n const expectedValues = this._def.values;\n addIssueToContext(ctx, {\n expected: util.joinValues(expectedValues),\n received: ctx.parsedType,\n code: ZodIssueCode.invalid_type,\n });\n return INVALID;\n }\n if (this._def.values.indexOf(input.data) === -1) {\n const ctx = this._getOrReturnCtx(input);\n const expectedValues = this._def.values;\n addIssueToContext(ctx, {\n received: ctx.data,\n code: ZodIssueCode.invalid_enum_value,\n options: expectedValues,\n });\n return INVALID;\n }\n return OK(input.data);\n }\n get options() {\n return this._def.values;\n }\n get enum() {\n const enumValues = {};\n for (const val of this._def.values) {\n enumValues[val] = val;\n }\n return enumValues;\n }\n get Values() {\n const enumValues = {};\n for (const val of this._def.values) {\n enumValues[val] = val;\n }\n return enumValues;\n }\n get Enum() {\n const enumValues = {};\n for (const val of this._def.values) {\n enumValues[val] = val;\n }\n return enumValues;\n }\n extract(values) {\n return ZodEnum.create(values);\n }\n exclude(values) {\n return ZodEnum.create(this.options.filter((opt) => !values.includes(opt)));\n }\n}\nZodEnum.create = createZodEnum;\nclass ZodNativeEnum extends ZodType {\n _parse(input) {\n const nativeEnumValues = util.getValidEnumValues(this._def.values);\n const ctx = this._getOrReturnCtx(input);\n if (ctx.parsedType !== ZodParsedType.string &&\n ctx.parsedType !== ZodParsedType.number) {\n const expectedValues = util.objectValues(nativeEnumValues);\n addIssueToContext(ctx, {\n expected: util.joinValues(expectedValues),\n received: ctx.parsedType,\n code: ZodIssueCode.invalid_type,\n });\n return INVALID;\n }\n if (nativeEnumValues.indexOf(input.data) === -1) {\n const expectedValues = util.objectValues(nativeEnumValues);\n addIssueToContext(ctx, {\n received: ctx.data,\n code: ZodIssueCode.invalid_enum_value,\n options: expectedValues,\n });\n return INVALID;\n }\n return OK(input.data);\n }\n get enum() {\n return this._def.values;\n }\n}\nZodNativeEnum.create = (values, params) => {\n return new ZodNativeEnum({\n values: values,\n typeName: ZodFirstPartyTypeKind.ZodNativeEnum,\n ...processCreateParams(params),\n });\n};\nclass ZodPromise extends ZodType {\n unwrap() {\n return this._def.type;\n }\n _parse(input) {\n const { ctx } = this._processInputParams(input);\n if (ctx.parsedType !== ZodParsedType.promise &&\n ctx.common.async === false) {\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_type,\n expected: ZodParsedType.promise,\n received: ctx.parsedType,\n });\n return INVALID;\n }\n const promisified = ctx.parsedType === ZodParsedType.promise\n ? ctx.data\n : Promise.resolve(ctx.data);\n return OK(promisified.then((data) => {\n return this._def.type.parseAsync(data, {\n path: ctx.path,\n errorMap: ctx.common.contextualErrorMap,\n });\n }));\n }\n}\nZodPromise.create = (schema, params) => {\n return new ZodPromise({\n type: schema,\n typeName: ZodFirstPartyTypeKind.ZodPromise,\n ...processCreateParams(params),\n });\n};\nclass ZodEffects extends ZodType {\n innerType() {\n return this._def.schema;\n }\n sourceType() {\n return this._def.schema._def.typeName === ZodFirstPartyTypeKind.ZodEffects\n ? this._def.schema.sourceType()\n : this._def.schema;\n }\n _parse(input) {\n const { status, ctx } = this._processInputParams(input);\n const effect = this._def.effect || null;\n const checkCtx = {\n addIssue: (arg) => {\n addIssueToContext(ctx, arg);\n if (arg.fatal) {\n status.abort();\n }\n else {\n status.dirty();\n }\n },\n get path() {\n return ctx.path;\n },\n };\n checkCtx.addIssue = checkCtx.addIssue.bind(checkCtx);\n if (effect.type === \"preprocess\") {\n const processed = effect.transform(ctx.data, checkCtx);\n if (ctx.common.issues.length) {\n return {\n status: \"dirty\",\n value: ctx.data,\n };\n }\n if (ctx.common.async) {\n return Promise.resolve(processed).then((processed) => {\n return this._def.schema._parseAsync({\n data: processed,\n path: ctx.path,\n parent: ctx,\n });\n });\n }\n else {\n return this._def.schema._parseSync({\n data: processed,\n path: ctx.path,\n parent: ctx,\n });\n }\n }\n if (effect.type === \"refinement\") {\n const executeRefinement = (acc\n // effect: RefinementEffect<any>\n ) => {\n const result = effect.refinement(acc, checkCtx);\n if (ctx.common.async) {\n return Promise.resolve(result);\n }\n if (result instanceof Promise) {\n throw new Error(\"Async refinement encountered during synchronous parse operation. Use .parseAsync instead.\");\n }\n return acc;\n };\n if (ctx.common.async === false) {\n const inner = this._def.schema._parseSync({\n data: ctx.data,\n path: ctx.path,\n parent: ctx,\n });\n if (inner.status === \"aborted\")\n return INVALID;\n if (inner.status === \"dirty\")\n status.dirty();\n // return value is ignored\n executeRefinement(inner.value);\n return { status: status.value, value: inner.value };\n }\n else {\n return this._def.schema\n ._parseAsync({ data: ctx.data, path: ctx.path, parent: ctx })\n .then((inner) => {\n if (inner.status === \"aborted\")\n return INVALID;\n if (inner.status === \"dirty\")\n status.dirty();\n return executeRefinement(inner.value).then(() => {\n return { status: status.value, value: inner.value };\n });\n });\n }\n }\n if (effect.type === \"transform\") {\n if (ctx.common.async === false) {\n const base = this._def.schema._parseSync({\n data: ctx.data,\n path: ctx.path,\n parent: ctx,\n });\n if (!isValid(base))\n return base;\n const result = effect.transform(base.value, checkCtx);\n if (result instanceof Promise) {\n throw new Error(`Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.`);\n }\n return { status: status.value, value: result };\n }\n else {\n return this._def.schema\n ._parseAsync({ data: ctx.data, path: ctx.path, parent: ctx })\n .then((base) => {\n if (!isValid(base))\n return base;\n return Promise.resolve(effect.transform(base.value, checkCtx)).then((result) => ({ status: status.value, value: result }));\n });\n }\n }\n util.assertNever(effect);\n }\n}\nZodEffects.create = (schema, effect, params) => {\n return new ZodEffects({\n schema,\n typeName: ZodFirstPartyTypeKind.ZodEffects,\n effect,\n ...processCreateParams(params),\n });\n};\nZodEffects.createWithPreprocess = (preprocess, schema, params) => {\n return new ZodEffects({\n schema,\n effect: { type: \"preprocess\", transform: preprocess },\n typeName: ZodFirstPartyTypeKind.ZodEffects,\n ...processCreateParams(params),\n });\n};\nclass ZodOptional extends ZodType {\n _parse(input) {\n const parsedType = this._getType(input);\n if (parsedType === ZodParsedType.undefined) {\n return OK(undefined);\n }\n return this._def.innerType._parse(input);\n }\n unwrap() {\n return this._def.innerType;\n }\n}\nZodOptional.create = (type, params) => {\n return new ZodOptional({\n innerType: type,\n typeName: ZodFirstPartyTypeKind.ZodOptional,\n ...processCreateParams(params),\n });\n};\nclass ZodNullable extends ZodType {\n _parse(input) {\n const parsedType = this._getType(input);\n if (parsedType === ZodParsedType.null) {\n return OK(null);\n }\n return this._def.innerType._parse(input);\n }\n unwrap() {\n return this._def.innerType;\n }\n}\nZodNullable.create = (type, params) => {\n return new ZodNullable({\n innerType: type,\n typeName: ZodFirstPartyTypeKind.ZodNullable,\n ...processCreateParams(params),\n });\n};\nclass ZodDefault extends ZodType {\n _parse(input) {\n const { ctx } = this._processInputParams(input);\n let data = ctx.data;\n if (ctx.parsedType === ZodParsedType.undefined) {\n data = this._def.defaultValue();\n }\n return this._def.innerType._parse({\n data,\n path: ctx.path,\n parent: ctx,\n });\n }\n removeDefault() {\n return this._def.innerType;\n }\n}\nZodDefault.create = (type, params) => {\n return new ZodDefault({\n innerType: type,\n typeName: ZodFirstPartyTypeKind.ZodDefault,\n defaultValue: typeof params.default === \"function\"\n ? params.default\n : () => params.default,\n ...processCreateParams(params),\n });\n};\nclass ZodCatch extends ZodType {\n _parse(input) {\n const { ctx } = this._processInputParams(input);\n // newCtx is used to not collect issues from inner types in ctx\n const newCtx = {\n ...ctx,\n common: {\n ...ctx.common,\n issues: [],\n },\n };\n const result = this._def.innerType._parse({\n data: newCtx.data,\n path: newCtx.path,\n parent: {\n ...newCtx,\n },\n });\n if (isAsync(result)) {\n return result.then((result) => {\n return {\n status: \"valid\",\n value: result.status === \"valid\"\n ? result.value\n : this._def.catchValue({\n get error() {\n return new ZodError(newCtx.common.issues);\n },\n input: newCtx.data,\n }),\n };\n });\n }\n else {\n return {\n status: \"valid\",\n value: result.status === \"valid\"\n ? result.value\n : this._def.catchValue({\n get error() {\n return new ZodError(newCtx.common.issues);\n },\n input: newCtx.data,\n }),\n };\n }\n }\n removeCatch() {\n return this._def.innerType;\n }\n}\nZodCatch.create = (type, params) => {\n return new ZodCatch({\n innerType: type,\n typeName: ZodFirstPartyTypeKind.ZodCatch,\n catchValue: typeof params.catch === \"function\" ? params.catch : () => params.catch,\n ...processCreateParams(params),\n });\n};\nclass ZodNaN extends ZodType {\n _parse(input) {\n const parsedType = this._getType(input);\n if (parsedType !== ZodParsedType.nan) {\n const ctx = this._getOrReturnCtx(input);\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_type,\n expected: ZodParsedType.nan,\n received: ctx.parsedType,\n });\n return INVALID;\n }\n return { status: \"valid\", value: input.data };\n }\n}\nZodNaN.create = (params) => {\n return new ZodNaN({\n typeName: ZodFirstPartyTypeKind.ZodNaN,\n ...processCreateParams(params),\n });\n};\nconst BRAND = Symbol(\"zod_brand\");\nclass ZodBranded extends ZodType {\n _parse(input) {\n const { ctx } = this._processInputParams(input);\n const data = ctx.data;\n return this._def.type._parse({\n data,\n path: ctx.path,\n parent: ctx,\n });\n }\n unwrap() {\n return this._def.type;\n }\n}\nclass ZodPipeline extends ZodType {\n _parse(input) {\n const { status, ctx } = this._processInputParams(input);\n if (ctx.common.async) {\n const handleAsync = async () => {\n const inResult = await this._def.in._parseAsync({\n data: ctx.data,\n path: ctx.path,\n parent: ctx,\n });\n if (inResult.status === \"aborted\")\n return INVALID;\n if (inResult.status === \"dirty\") {\n status.dirty();\n return DIRTY(inResult.value);\n }\n else {\n return this._def.out._parseAsync({\n data: inResult.value,\n path: ctx.path,\n parent: ctx,\n });\n }\n };\n return handleAsync();\n }\n else {\n const inResult = this._def.in._parseSync({\n data: ctx.data,\n path: ctx.path,\n parent: ctx,\n });\n if (inResult.status === \"aborted\")\n return INVALID;\n if (inResult.status === \"dirty\") {\n status.dirty();\n return {\n status: \"dirty\",\n value: inResult.value,\n };\n }\n else {\n return this._def.out._parseSync({\n data: inResult.value,\n path: ctx.path,\n parent: ctx,\n });\n }\n }\n }\n static create(a, b) {\n return new ZodPipeline({\n in: a,\n out: b,\n typeName: ZodFirstPartyTypeKind.ZodPipeline,\n });\n }\n}\nclass ZodReadonly extends ZodType {\n _parse(input) {\n const result = this._def.innerType._parse(input);\n if (isValid(result)) {\n result.value = Object.freeze(result.value);\n }\n return result;\n }\n}\nZodReadonly.create = (type, params) => {\n return new ZodReadonly({\n innerType: type,\n typeName: ZodFirstPartyTypeKind.ZodReadonly,\n ...processCreateParams(params),\n });\n};\nconst custom = (check, params = {}, \n/**\n * @deprecated\n *\n * Pass `fatal` into the params object instead:\n *\n * ```ts\n * z.string().custom((val) => val.length > 5, { fatal: false })\n * ```\n *\n */\nfatal) => {\n if (check)\n return ZodAny.create().superRefine((data, ctx) => {\n var _a, _b;\n if (!check(data)) {\n const p = typeof params === \"function\"\n ? params(data)\n : typeof params === \"string\"\n ? { message: params }\n : params;\n const _fatal = (_b = (_a = p.fatal) !== null && _a !== void 0 ? _a : fatal) !== null && _b !== void 0 ? _b : true;\n const p2 = typeof p === \"string\" ? { message: p } : p;\n ctx.addIssue({ code: \"custom\", ...p2, fatal: _fatal });\n }\n });\n return ZodAny.create();\n};\nconst late = {\n object: ZodObject.lazycreate,\n};\nvar ZodFirstPartyTypeKind;\n(function (ZodFirstPartyTypeKind) {\n ZodFirstPartyTypeKind[\"ZodString\"] = \"ZodString\";\n ZodFirstPartyTypeKind[\"ZodNumber\"] = \"ZodNumber\";\n ZodFirstPartyTypeKind[\"ZodNaN\"] = \"ZodNaN\";\n ZodFirstPartyTypeKind[\"ZodBigInt\"] = \"ZodBigInt\";\n ZodFirstPartyTypeKind[\"ZodBoolean\"] = \"ZodBoolean\";\n ZodFirstPartyTypeKind[\"ZodDate\"] = \"ZodDate\";\n ZodFirstPartyTypeKind[\"ZodSymbol\"] = \"ZodSymbol\";\n ZodFirstPartyTypeKind[\"ZodUndefined\"] = \"ZodUndefined\";\n ZodFirstPartyTypeKind[\"ZodNull\"] = \"ZodNull\";\n ZodFirstPartyTypeKind[\"ZodAny\"] = \"ZodAny\";\n ZodFirstPartyTypeKind[\"ZodUnknown\"] = \"ZodUnknown\";\n ZodFirstPartyTypeKind[\"ZodNever\"] = \"ZodNever\";\n ZodFirstPartyTypeKind[\"ZodVoid\"] = \"ZodVoid\";\n ZodFirstPartyTypeKind[\"ZodArray\"] = \"ZodArray\";\n ZodFirstPartyTypeKind[\"ZodObject\"] = \"ZodObject\";\n ZodFirstPartyTypeKind[\"ZodUnion\"] = \"ZodUnion\";\n ZodFirstPartyTypeKind[\"ZodDiscriminatedUnion\"] = \"ZodDiscriminatedUnion\";\n ZodFirstPartyTypeKind[\"ZodIntersection\"] = \"ZodIntersection\";\n ZodFirstPartyTypeKind[\"ZodTuple\"] = \"ZodTuple\";\n ZodFirstPartyTypeKind[\"ZodRecord\"] = \"ZodRecord\";\n ZodFirstPartyTypeKind[\"ZodMap\"] = \"ZodMap\";\n ZodFirstPartyTypeKind[\"ZodSet\"] = \"ZodSet\";\n ZodFirstPartyTypeKind[\"ZodFunction\"] = \"ZodFunction\";\n ZodFirstPartyTypeKind[\"ZodLazy\"] = \"ZodLazy\";\n ZodFirstPartyTypeKind[\"ZodLiteral\"] = \"ZodLiteral\";\n ZodFirstPartyTypeKind[\"ZodEnum\"] = \"ZodEnum\";\n ZodFirstPartyTypeKind[\"ZodEffects\"] = \"ZodEffects\";\n ZodFirstPartyTypeKind[\"ZodNativeEnum\"] = \"ZodNativeEnum\";\n ZodFirstPartyTypeKind[\"ZodOptional\"] = \"ZodOptional\";\n ZodFirstPartyTypeKind[\"ZodNullable\"] = \"ZodNullable\";\n ZodFirstPartyTypeKind[\"ZodDefault\"] = \"ZodDefault\";\n ZodFirstPartyTypeKind[\"ZodCatch\"] = \"ZodCatch\";\n ZodFirstPartyTypeKind[\"ZodPromise\"] = \"ZodPromise\";\n ZodFirstPartyTypeKind[\"ZodBranded\"] = \"ZodBranded\";\n ZodFirstPartyTypeKind[\"ZodPipeline\"] = \"ZodPipeline\";\n ZodFirstPartyTypeKind[\"ZodReadonly\"] = \"ZodReadonly\";\n})(ZodFirstPartyTypeKind || (ZodFirstPartyTypeKind = {}));\nconst instanceOfType = (\n// const instanceOfType = <T extends new (...args: any[]) => any>(\ncls, params = {\n message: `Input not instance of ${cls.name}`,\n}) => custom((data) => data instanceof cls, params);\nconst stringType = ZodString.create;\nconst numberType = ZodNumber.create;\nconst nanType = ZodNaN.create;\nconst bigIntType = ZodBigInt.create;\nconst booleanType = ZodBoolean.create;\nconst dateType = ZodDate.create;\nconst symbolType = ZodSymbol.create;\nconst undefinedType = ZodUndefined.create;\nconst nullType = ZodNull.create;\nconst anyType = ZodAny.create;\nconst unknownType = ZodUnknown.create;\nconst neverType = ZodNever.create;\nconst voidType = ZodVoid.create;\nconst arrayType = ZodArray.create;\nconst objectType = ZodObject.create;\nconst strictObjectType = ZodObject.strictCreate;\nconst unionType = ZodUnion.create;\nconst discriminatedUnionType = ZodDiscriminatedUnion.create;\nconst intersectionType = ZodIntersection.create;\nconst tupleType = ZodTuple.create;\nconst recordType = ZodRecord.create;\nconst mapType = ZodMap.create;\nconst setType = ZodSet.create;\nconst functionType = ZodFunction.create;\nconst lazyType = ZodLazy.create;\nconst literalType = ZodLiteral.create;\nconst enumType = ZodEnum.create;\nconst nativeEnumType = ZodNativeEnum.create;\nconst promiseType = ZodPromise.create;\nconst effectsType = ZodEffects.create;\nconst optionalType = ZodOptional.create;\nconst nullableType = ZodNullable.create;\nconst preprocessType = ZodEffects.createWithPreprocess;\nconst pipelineType = ZodPipeline.create;\nconst ostring = () => stringType().optional();\nconst onumber = () => numberType().optional();\nconst oboolean = () => booleanType().optional();\nconst coerce = {\n string: ((arg) => ZodString.create({ ...arg, coerce: true })),\n number: ((arg) => ZodNumber.create({ ...arg, coerce: true })),\n boolean: ((arg) => ZodBoolean.create({\n ...arg,\n coerce: true,\n })),\n bigint: ((arg) => ZodBigInt.create({ ...arg, coerce: true })),\n date: ((arg) => ZodDate.create({ ...arg, coerce: true })),\n};\nconst NEVER = INVALID;\n\nvar z = /*#__PURE__*/Object.freeze({\n __proto__: null,\n defaultErrorMap: errorMap,\n setErrorMap: setErrorMap,\n getErrorMap: getErrorMap,\n makeIssue: makeIssue,\n EMPTY_PATH: EMPTY_PATH,\n addIssueToContext: addIssueToContext,\n ParseStatus: ParseStatus,\n INVALID: INVALID,\n DIRTY: DIRTY,\n OK: OK,\n isAborted: isAborted,\n isDirty: isDirty,\n isValid: isValid,\n isAsync: isAsync,\n get util () { return util; },\n get objectUtil () { return objectUtil; },\n ZodParsedType: ZodParsedType,\n getParsedType: getParsedType,\n ZodType: ZodType,\n ZodString: ZodString,\n ZodNumber: ZodNumber,\n ZodBigInt: ZodBigInt,\n ZodBoolean: ZodBoolean,\n ZodDate: ZodDate,\n ZodSymbol: ZodSymbol,\n ZodUndefined: ZodUndefined,\n ZodNull: ZodNull,\n ZodAny: ZodAny,\n ZodUnknown: ZodUnknown,\n ZodNever: ZodNever,\n ZodVoid: ZodVoid,\n ZodArray: ZodArray,\n ZodObject: ZodObject,\n ZodUnion: ZodUnion,\n ZodDiscriminatedUnion: ZodDiscriminatedUnion,\n ZodIntersection: ZodIntersection,\n ZodTuple: ZodTuple,\n ZodRecord: ZodRecord,\n ZodMap: ZodMap,\n ZodSet: ZodSet,\n ZodFunction: ZodFunction,\n ZodLazy: ZodLazy,\n ZodLiteral: ZodLiteral,\n ZodEnum: ZodEnum,\n ZodNativeEnum: ZodNativeEnum,\n ZodPromise: ZodPromise,\n ZodEffects: ZodEffects,\n ZodTransformer: ZodEffects,\n ZodOptional: ZodOptional,\n ZodNullable: ZodNullable,\n ZodDefault: ZodDefault,\n ZodCatch: ZodCatch,\n ZodNaN: ZodNaN,\n BRAND: BRAND,\n ZodBranded: ZodBranded,\n ZodPipeline: ZodPipeline,\n ZodReadonly: ZodReadonly,\n custom: custom,\n Schema: ZodType,\n ZodSchema: ZodType,\n late: late,\n get ZodFirstPartyTypeKind () { return ZodFirstPartyTypeKind; },\n coerce: coerce,\n any: anyType,\n array: arrayType,\n bigint: bigIntType,\n boolean: booleanType,\n date: dateType,\n discriminatedUnion: discriminatedUnionType,\n effect: effectsType,\n 'enum': enumType,\n 'function': functionType,\n 'instanceof': instanceOfType,\n intersection: intersectionType,\n lazy: lazyType,\n literal: literalType,\n map: mapType,\n nan: nanType,\n nativeEnum: nativeEnumType,\n never: neverType,\n 'null': nullType,\n nullable: nullableType,\n number: numberType,\n object: objectType,\n oboolean: oboolean,\n onumber: onumber,\n optional: optionalType,\n ostring: ostring,\n pipeline: pipelineType,\n preprocess: preprocessType,\n promise: promiseType,\n record: recordType,\n set: setType,\n strictObject: strictObjectType,\n string: stringType,\n symbol: symbolType,\n transformer: effectsType,\n tuple: tupleType,\n 'undefined': undefinedType,\n union: unionType,\n unknown: unknownType,\n 'void': voidType,\n NEVER: NEVER,\n ZodIssueCode: ZodIssueCode,\n quotelessJson: quotelessJson,\n ZodError: ZodError\n});\n\nexport { BRAND, DIRTY, EMPTY_PATH, INVALID, NEVER, OK, ParseStatus, ZodType as Schema, ZodAny, ZodArray, ZodBigInt, ZodBoolean, ZodBranded, ZodCatch, ZodDate, ZodDefault, ZodDiscriminatedUnion, ZodEffects, ZodEnum, ZodError, ZodFirstPartyTypeKind, ZodFunction, ZodIntersection, ZodIssueCode, ZodLazy, ZodLiteral, ZodMap, ZodNaN, ZodNativeEnum, ZodNever, ZodNull, ZodNullable, ZodNumber, ZodObject, ZodOptional, ZodParsedType, ZodPipeline, ZodPromise, ZodReadonly, ZodRecord, ZodType as ZodSchema, ZodSet, ZodString, ZodSymbol, ZodEffects as ZodTransformer, ZodTuple, ZodType, ZodUndefined, ZodUnion, ZodUnknown, ZodVoid, addIssueToContext, anyType as any, arrayType as array, bigIntType as bigint, booleanType as boolean, coerce, custom, dateType as date, z as default, errorMap as defaultErrorMap, discriminatedUnionType as discriminatedUnion, effectsType as effect, enumType as enum, functionType as function, getErrorMap, getParsedType, instanceOfType as instanceof, intersectionType as intersection, isAborted, isAsync, isDirty, isValid, late, lazyType as lazy, literalType as literal, makeIssue, mapType as map, nanType as nan, nativeEnumType as nativeEnum, neverType as never, nullType as null, nullableType as nullable, numberType as number, objectType as object, objectUtil, oboolean, onumber, optionalType as optional, ostring, pipelineType as pipeline, preprocessType as preprocess, promiseType as promise, quotelessJson, recordType as record, setType as set, setErrorMap, strictObjectType as strictObject, stringType as string, symbolType as symbol, effectsType as transformer, tupleType as tuple, undefinedType as undefined, unionType as union, unknownType as unknown, util, voidType as void, z };\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n/**\n * Checks if the given HTTP status code is either 401 (Unauthorized) or 403 (Forbidden).\n * @param httpStatus\n */\nexport function needsAuthentication(httpStatus: number) {\n return httpStatus === 401 || httpStatus === 403;\n}\n\nexport function createUrlEncodedParamsString(obj: Record<string, string>) {\n return Object.entries(obj)\n .map(([k, v]) => `${encodeURIComponent(k)}=${encodeURIComponent(v)}`)\n .join('&');\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\nimport {z} from 'zod';\nimport {type ClientCredentials} from '../model/ClientCredentials';\nimport {createUrlEncodedParamsString} from './HttpUtils';\n\nconst ClientCredentialsResponseSchema = z.object({\n access_token: z.string().min(1),\n token_type: z.string(),\n expires_in: z.number(),\n scope: z.string(),\n});\nexport type ClientCredentialsResponse = z.infer<\n typeof ClientCredentialsResponseSchema\n>;\n\nexport async function fetchClientCredentials(\n clientCredentials: ClientCredentials,\n): Promise<ClientCredentialsResponse> {\n const response = await fetch(clientCredentials.tokenUrl, {\n method: 'POST',\n body: createUrlEncodedParamsString({\n grant_type: 'client_credentials',\n client_id: clientCredentials.clientId,\n client_secret: clientCredentials.clientSecret,\n }),\n headers: {\n 'Content-Type': 'application/x-www-form-urlencoded',\n },\n });\n const json: unknown = await response.json();\n return parseTokenResponse(json);\n}\n\nfunction parseTokenResponse(json: unknown): ClientCredentialsResponse {\n const tokenResponseParsed = ClientCredentialsResponseSchema.safeParse(json);\n if (!tokenResponseParsed.success) {\n throw new Error('Bad access token response');\n }\n return tokenResponseParsed.data;\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\nimport {type ClientCredentials} from './model/ClientCredentials';\nimport {\n type ClientCredentialsResponse,\n fetchClientCredentials,\n} from './utils/FetchUtils';\n\nexport class AccessTokenService {\n private activeRequest: Promise<ClientCredentialsResponse> | null = null;\n private refreshTimeout?: number;\n private accessToken: string | null = null;\n\n constructor(private clientCredentials: ClientCredentials) {}\n\n async getAccessToken(): Promise<string> {\n if (!this.accessToken) {\n return await this.refreshAccessToken();\n }\n return this.accessToken;\n }\n\n /**\n * Synchronized refreshing of the access token\n */\n async refreshAccessToken(): Promise<string> {\n if (this.activeRequest) {\n await this.activeRequest;\n return this.accessToken!;\n }\n\n this.accessToken = null;\n this.activeRequest = fetchClientCredentials(this.clientCredentials);\n const response = await this.activeRequest;\n this.scheduleNextRefresh(response);\n this.accessToken = response.access_token;\n this.activeRequest = null;\n\n return this.accessToken;\n }\n\n private scheduleNextRefresh(response: ClientCredentialsResponse) {\n clearTimeout(this.refreshTimeout);\n const ms = (response.expires_in - 2) * 1000;\n // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment\n this.refreshTimeout = setTimeout(() => {\n this.accessToken = null;\n }, ms) as any;\n }\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\nexport function injectAccessTokenHeader(init: RequestInit, token: string) {\n init.headers = withHeader('Authorization', `Bearer ${token}`, init.headers);\n}\n\nfunction withHeader(\n headerName: string,\n headerValue: string,\n headers?: HeadersInit,\n): HeadersInit {\n if (!headers) {\n headers = {};\n headers[headerName] = headerValue;\n return headers;\n }\n\n if (Array.isArray(headers)) {\n return headers.map(([a, b]): [string, string] =>\n a !== headerName ? [a, b] : [headerName, headerValue],\n );\n }\n\n if (isHeaders(headers)) {\n if (headers.has(headerName)) {\n headers.set(headerName, headerValue);\n } else {\n headers.append(headerName, headerValue);\n }\n return headers;\n }\n\n headers[headerName] = headerValue;\n return headers;\n}\n\nfunction isHeaders(object: any): object is Headers {\n return (\n 'append' in object &&\n 'delete' in object &&\n 'get' in object &&\n 'has' in object &&\n 'set' in object &&\n 'forEach' in object\n );\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\nimport {\n type Middleware,\n type RequestContext,\n type ResponseContext,\n} from '../generated';\nimport {AccessTokenService} from './AccessTokenService';\nimport {type ClientCredentials} from './model/ClientCredentials';\nimport {needsAuthentication} from './utils/HttpUtils';\nimport {injectAccessTokenHeader} from './utils/RequestUtils';\n\nexport function buildOAuthMiddleware(\n clientCredentials: ClientCredentials,\n): Middleware {\n const accessTokenService = new AccessTokenService(clientCredentials);\n\n return {\n pre: async (ctx: RequestContext) => {\n const accessToken = await accessTokenService.getAccessToken();\n injectAccessTokenHeader(ctx.init, accessToken);\n\n return Promise.resolve({\n url: ctx.url,\n init: ctx.init,\n });\n },\n post: async (ctx: ResponseContext): Promise<Response> => {\n if (needsAuthentication(ctx.response.status)) {\n const accessToken =\n await accessTokenService.refreshAccessToken();\n injectAccessTokenHeader(ctx.init, accessToken);\n // Use normal fetch to not trigger middleware on retry\n return await fetch(ctx.url, ctx.init);\n }\n\n return Promise.resolve(ctx.response);\n },\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\nimport {\n Configuration,\n type ConfigurationParameters,\n EnterpriseEditionApi,\n type Middleware,\n UIApi,\n UseCaseApi,\n} from './generated';\nimport {buildOAuthMiddleware} from './oauth2/Middleware';\nimport {type ClientCredentials} from './oauth2/model/ClientCredentials';\n\n/**\n * API Client for our sovity EDC\n */\nexport interface EdcClient {\n uiApi: UIApi;\n useCaseApi: UseCaseApi;\n enterpriseEditionApi: EnterpriseEditionApi;\n}\n\n/**\n * Configure & Build new EDC Client\n * @param opts opts\n */\nexport function buildEdcClient(opts: EdcClientOptions): EdcClient {\n const middleware: Middleware[] = [];\n let headers: Record<string, string> = {};\n\n if (opts.clientCredentials) {\n middleware.push(buildOAuthMiddleware(opts.clientCredentials));\n }\n if (opts.managementApiKey) {\n headers = buildApiKeyHeader(opts.managementApiKey);\n }\n\n const config = new Configuration({\n basePath: opts.managementApiUrl,\n headers,\n credentials: 'same-origin',\n middleware,\n ...opts.configOverrides,\n });\n\n return {\n uiApi: new UIApi(config),\n useCaseApi: new UseCaseApi(config),\n enterpriseEditionApi: new EnterpriseEditionApi(config),\n };\n}\n\nfunction buildApiKeyHeader(key: string) {\n return {\n 'X-Api-Key': key,\n };\n}\n\n/**\n * Options for instantiating an EDC API Client\n */\nexport interface EdcClientOptions {\n managementApiUrl: string;\n managementApiKey?: string;\n clientCredentials?: ClientCredentials;\n configOverrides?: Partial<ConfigurationParameters>;\n}\n"],"names":["BASE_PATH","Configuration","configuration","querystring","apiKey","accessToken","DefaultConfig","_BaseAPI","__publicField","url","init","fetchParams","middleware","response","e","FetchError","middlewares","next","preMiddlewares","pre","postMiddlewares","post","mime","context","initOverrides","ResponseError","headers","key","initOverrideFn","initParams","overriddenInit","body","isFormData","isBlob","constructor","BaseAPI","value","msg","cause","RequiredError","field","COLLECTION_FORMATS","params","prefix","querystringSingleKey","part","keyPrefix","fullKey","multiValue","singleValue","valueAsArray","exists","json","mapValues","data","fn","acc","canConsumeForm","consumes","consume","JSONApiResponse","raw","transformer","jsonValue","VoidApiResponse","BlobApiResponse","TextApiResponse","AssetFilterConstraintOperator","instanceOfAssetFilterConstraintOperator","AssetFilterConstraintOperatorFromJSON","AssetFilterConstraintOperatorFromJSONTyped","ignoreDiscriminator","AssetFilterConstraintOperatorToJSON","AssetFilterConstraintOperatorToJSONTyped","instanceOfAssetFilterConstraint","AssetFilterConstraintFromJSON","AssetFilterConstraintFromJSONTyped","AssetFilterConstraintToJSON","AssetFilterConstraintToJSONTyped","DataSourceAvailability","instanceOfDataSourceAvailability","DataSourceAvailabilityFromJSON","DataSourceAvailabilityFromJSONTyped","DataSourceAvailabilityToJSON","DataSourceAvailabilityToJSONTyped","instanceOfUiAssetExtForSphinx","UiAssetExtForSphinxFromJSON","UiAssetExtForSphinxFromJSONTyped","UiAssetExtForSphinxToJSON","UiAssetExtForSphinxToJSONTyped","instanceOfUiAsset","UiAssetFromJSON","UiAssetFromJSONTyped","UiAssetToJSON","UiAssetToJSONTyped","instanceOfAssetListPage","AssetListPageFromJSON","AssetListPageFromJSONTyped","AssetListPageToJSON","AssetListPageToJSONTyped","AssetListSortProperty","instanceOfAssetListSortProperty","AssetListSortPropertyFromJSON","AssetListSortPropertyFromJSONTyped","AssetListSortPropertyToJSON","AssetListSortPropertyToJSONTyped","instanceOfTableColumnSortAssetListSortProperty","TableColumnSortAssetListSortPropertyFromJSON","TableColumnSortAssetListSortPropertyFromJSONTyped","TableColumnSortAssetListSortPropertyToJSON","TableColumnSortAssetListSortPropertyToJSONTyped","instanceOfAssetListPageFilter","AssetListPageFilterFromJSON","AssetListPageFilterFromJSONTyped","AssetListPageFilterToJSON","AssetListPageFilterToJSONTyped","instanceOfBuildInfo","BuildInfoFromJSON","BuildInfoFromJSONTyped","BuildInfoToJSON","BuildInfoToJSONTyped","instanceOfBusinessPartnerGroupCreateSubmit","BusinessPartnerGroupCreateSubmitFromJSON","BusinessPartnerGroupCreateSubmitFromJSONTyped","BusinessPartnerGroupCreateSubmitToJSON","BusinessPartnerGroupCreateSubmitToJSONTyped","instanceOfBusinessPartnerGroupEditPage","BusinessPartnerGroupEditPageFromJSON","BusinessPartnerGroupEditPageFromJSONTyped","BusinessPartnerGroupEditPageToJSON","BusinessPartnerGroupEditPageToJSONTyped","instanceOfBusinessPartnerGroupEditSubmit","BusinessPartnerGroupEditSubmitFromJSON","BusinessPartnerGroupEditSubmitFromJSONTyped","BusinessPartnerGroupEditSubmitToJSON","BusinessPartnerGroupEditSubmitToJSONTyped","instanceOfBusinessPartnerGroupListPageEntry","BusinessPartnerGroupListPageEntryFromJSON","BusinessPartnerGroupListPageEntryFromJSONTyped","BusinessPartnerGroupListPageEntryToJSON","BusinessPartnerGroupListPageEntryToJSONTyped","instanceOfBusinessPartnerGroupQuery","BusinessPartnerGroupQueryFromJSON","BusinessPartnerGroupQueryFromJSONTyped","BusinessPartnerGroupQueryToJSON","BusinessPartnerGroupQueryToJSONTyped","CallbackAddressEventType","instanceOfCallbackAddressEventType","CallbackAddressEventTypeFromJSON","CallbackAddressEventTypeFromJSONTyped","CallbackAddressEventTypeToJSON","CallbackAddressEventTypeToJSONTyped","instanceOfCallbackAddressDto","CallbackAddressDtoFromJSON","CallbackAddressDtoFromJSONTyped","CallbackAddressDtoToJSON","CallbackAddressDtoToJSONTyped","CatalogFilterExpressionLiteralType","instanceOfCatalogFilterExpressionLiteralType","CatalogFilterExpressionLiteralTypeFromJSON","CatalogFilterExpressionLiteralTypeFromJSONTyped","CatalogFilterExpressionLiteralTypeToJSON","CatalogFilterExpressionLiteralTypeToJSONTyped","instanceOfCatalogFilterExpressionLiteral","CatalogFilterExpressionLiteralFromJSON","CatalogFilterExpressionLiteralFromJSONTyped","CatalogFilterExpressionLiteralToJSON","CatalogFilterExpressionLiteralToJSONTyped","CatalogFilterExpressionOperator","instanceOfCatalogFilterExpressionOperator","CatalogFilterExpressionOperatorFromJSON","CatalogFilterExpressionOperatorFromJSONTyped","CatalogFilterExpressionOperatorToJSON","CatalogFilterExpressionOperatorToJSONTyped","instanceOfCatalogFilterExpression","CatalogFilterExpressionFromJSON","CatalogFilterExpressionFromJSONTyped","CatalogFilterExpressionToJSON","CatalogFilterExpressionToJSONTyped","instanceOfCatalogQuery","CatalogQueryFromJSON","CatalogQueryFromJSONTyped","CatalogQueryToJSON","CatalogQueryToJSONTyped","CatalogSortByDirection","instanceOfCatalogSortByDirection","CatalogSortByDirectionFromJSON","CatalogSortByDirectionFromJSONTyped","CatalogSortByDirectionToJSON","CatalogSortByDirectionToJSONTyped","instanceOfCatalogSortBy","CatalogSortByFromJSON","CatalogSortByFromJSONTyped","CatalogSortByToJSON","CatalogSortByToJSONTyped","instanceOfCatalogQueryV2","CatalogQueryV2FromJSON","CatalogQueryV2FromJSONTyped","CatalogQueryV2ToJSON","CatalogQueryV2ToJSONTyped","instanceOfConnectorLimits","ConnectorLimitsFromJSON","ConnectorLimitsFromJSONTyped","ConnectorLimitsToJSON","ConnectorLimitsToJSONTyped","ContractAgreementDirection","instanceOfContractAgreementDirection","ContractAgreementDirectionFromJSON","ContractAgreementDirectionFromJSONTyped","ContractAgreementDirectionToJSON","ContractAgreementDirectionToJSONTyped","ContractTerminatedBy","instanceOfContractTerminatedBy","ContractTerminatedByFromJSON","ContractTerminatedByFromJSONTyped","ContractTerminatedByToJSON","ContractTerminatedByToJSONTyped","instanceOfContractAgreementTerminationInfo","ContractAgreementTerminationInfoFromJSON","ContractAgreementTerminationInfoFromJSONTyped","ContractAgreementTerminationInfoToJSON","ContractAgreementTerminationInfoToJSONTyped","TransferProcessSimplifiedState","instanceOfTransferProcessSimplifiedState","TransferProcessSimplifiedStateFromJSON","TransferProcessSimplifiedStateFromJSONTyped","TransferProcessSimplifiedStateToJSON","TransferProcessSimplifiedStateToJSONTyped","instanceOfTransferProcessState","TransferProcessStateFromJSON","TransferProcessStateFromJSONTyped","TransferProcessStateToJSON","TransferProcessStateToJSONTyped","instanceOfContractAgreementTransferProcess","ContractAgreementTransferProcessFromJSON","ContractAgreementTransferProcessFromJSONTyped","ContractAgreementTransferProcessToJSON","ContractAgreementTransferProcessToJSONTyped","ContractTerminationStatus","instanceOfContractTerminationStatus","ContractTerminationStatusFromJSON","ContractTerminationStatusFromJSONTyped","ContractTerminationStatusToJSON","ContractTerminationStatusToJSONTyped","OperatorDto","instanceOfOperatorDto","OperatorDtoFromJSON","OperatorDtoFromJSONTyped","OperatorDtoToJSON","OperatorDtoToJSONTyped","UiPolicyLiteralType","instanceOfUiPolicyLiteralType","UiPolicyLiteralTypeFromJSON","UiPolicyLiteralTypeFromJSONTyped","UiPolicyLiteralTypeToJSON","UiPolicyLiteralTypeToJSONTyped","instanceOfUiPolicyLiteral","UiPolicyLiteralFromJSON","UiPolicyLiteralFromJSONTyped","UiPolicyLiteralToJSON","UiPolicyLiteralToJSONTyped","instanceOfUiPolicyConstraint","UiPolicyConstraintFromJSON","UiPolicyConstraintFromJSONTyped","UiPolicyConstraintToJSON","UiPolicyConstraintToJSONTyped","UiPolicyExpressionType","instanceOfUiPolicyExpressionType","UiPolicyExpressionTypeFromJSON","UiPolicyExpressionTypeFromJSONTyped","UiPolicyExpressionTypeToJSON","UiPolicyExpressionTypeToJSONTyped","instanceOfUiPolicyExpression","UiPolicyExpressionFromJSON","UiPolicyExpressionFromJSONTyped","UiPolicyExpressionToJSON","UiPolicyExpressionToJSONTyped","instanceOfUiPolicy","UiPolicyFromJSON","UiPolicyFromJSONTyped","UiPolicyToJSON","UiPolicyToJSONTyped","instanceOfContractAgreementCard","ContractAgreementCardFromJSON","ContractAgreementCardFromJSONTyped","ContractAgreementCardToJSON","ContractAgreementCardToJSONTyped","instanceOfContractAgreementPage","ContractAgreementPageFromJSON","ContractAgreementPageFromJSONTyped","ContractAgreementPageToJSON","ContractAgreementPageToJSONTyped","instanceOfContractAgreementPageQuery","ContractAgreementPageQueryFromJSON","ContractAgreementPageQueryFromJSONTyped","ContractAgreementPageQueryToJSON","ContractAgreementPageQueryToJSONTyped","UiCriterionLiteralType","instanceOfUiCriterionLiteralType","UiCriterionLiteralTypeFromJSON","UiCriterionLiteralTypeFromJSONTyped","UiCriterionLiteralTypeToJSON","UiCriterionLiteralTypeToJSONTyped","instanceOfUiCriterionLiteral","UiCriterionLiteralFromJSON","UiCriterionLiteralFromJSONTyped","UiCriterionLiteralToJSON","UiCriterionLiteralToJSONTyped","UiCriterionOperator","instanceOfUiCriterionOperator","UiCriterionOperatorFromJSON","UiCriterionOperatorFromJSONTyped","UiCriterionOperatorToJSON","UiCriterionOperatorToJSONTyped","instanceOfUiCriterion","UiCriterionFromJSON","UiCriterionFromJSONTyped","UiCriterionToJSON","UiCriterionToJSONTyped","instanceOfContractDefinitionEntry","ContractDefinitionEntryFromJSON","ContractDefinitionEntryFromJSONTyped","ContractDefinitionEntryToJSON","ContractDefinitionEntryToJSONTyped","instanceOfContractDefinitionPage","ContractDefinitionPageFromJSON","ContractDefinitionPageFromJSONTyped","ContractDefinitionPageToJSON","ContractDefinitionPageToJSONTyped","instanceOfContractDefinitionRequest","ContractDefinitionRequestFromJSON","ContractDefinitionRequestFromJSONTyped","ContractDefinitionRequestToJSON","ContractDefinitionRequestToJSONTyped","instanceOfContractNegotiationRequest","ContractNegotiationRequestFromJSON","ContractNegotiationRequestFromJSONTyped","ContractNegotiationRequestToJSON","ContractNegotiationRequestToJSONTyped","ContractNegotiationSimplifiedState","instanceOfContractNegotiationSimplifiedState","ContractNegotiationSimplifiedStateFromJSON","ContractNegotiationSimplifiedStateFromJSONTyped","ContractNegotiationSimplifiedStateToJSON","ContractNegotiationSimplifiedStateToJSONTyped","instanceOfContractNegotiationState","ContractNegotiationStateFromJSON","ContractNegotiationStateFromJSONTyped","ContractNegotiationStateToJSON","ContractNegotiationStateToJSONTyped","instanceOfContractNegotiationStateResult","ContractNegotiationStateResultFromJSON","ContractNegotiationStateResultFromJSONTyped","ContractNegotiationStateResultToJSON","ContractNegotiationStateResultToJSONTyped","instanceOfContractTerminationRequest","ContractTerminationRequestFromJSON","ContractTerminationRequestFromJSONTyped","ContractTerminationRequestToJSON","ContractTerminationRequestToJSONTyped","instanceOfDashboardCxDidConfig","DashboardCxDidConfigFromJSON","DashboardCxDidConfigFromJSONTyped","DashboardCxDidConfigToJSON","DashboardCxDidConfigToJSONTyped","instanceOfDashboardDapsConfig","DashboardDapsConfigFromJSON","DashboardDapsConfigFromJSONTyped","DashboardDapsConfigToJSON","DashboardDapsConfigToJSONTyped","instanceOfDashboardTransferAmounts","DashboardTransferAmountsFromJSON","DashboardTransferAmountsFromJSONTyped","DashboardTransferAmountsToJSON","DashboardTransferAmountsToJSONTyped","instanceOfDashboardPage","DashboardPageFromJSON","DashboardPageFromJSONTyped","DashboardPageToJSON","DashboardPageToJSONTyped","DataOfferPublishType","instanceOfDataOfferPublishType","DataOfferPublishTypeFromJSON","DataOfferPublishTypeFromJSONTyped","DataOfferPublishTypeToJSON","DataOfferPublishTypeToJSONTyped","DataSourceType","instanceOfDataSourceType","DataSourceTypeFromJSON","DataSourceTypeFromJSONTyped","DataSourceTypeToJSON","DataSourceTypeToJSONTyped","UiDataSourceHttpDataMethod","instanceOfUiDataSourceHttpDataMethod","UiDataSourceHttpDataMethodFromJSON","UiDataSourceHttpDataMethodFromJSONTyped","UiDataSourceHttpDataMethodToJSON","UiDataSourceHttpDataMethodToJSONTyped","instanceOfUiHttpAuthApiKey","UiHttpAuthApiKeyFromJSON","UiHttpAuthApiKeyFromJSONTyped","UiHttpAuthApiKeyToJSON","UiHttpAuthApiKeyToJSONTyped","instanceOfUiHttpAuthBasic","UiHttpAuthBasicFromJSON","UiHttpAuthBasicFromJSONTyped","UiHttpAuthBasicToJSON","UiHttpAuthBasicToJSONTyped","UiHttpOauth2AuthType","instanceOfUiHttpOauth2AuthType","UiHttpOauth2AuthTypeFromJSON","UiHttpOauth2AuthTypeFromJSONTyped","UiHttpOauth2AuthTypeToJSON","UiHttpOauth2AuthTypeToJSONTyped","instanceOfUiHttpOauth2PrivateKeyAuthorization","UiHttpOauth2PrivateKeyAuthorizationFromJSON","UiHttpOauth2PrivateKeyAuthorizationFromJSONTyped","UiHttpOauth2PrivateKeyAuthorizationToJSON","UiHttpOauth2PrivateKeyAuthorizationToJSONTyped","instanceOfUiHttpOauth2SharedSecretAuthorization","UiHttpOauth2SharedSecretAuthorizationFromJSON","UiHttpOauth2SharedSecretAuthorizationFromJSONTyped","UiHttpOauth2SharedSecretAuthorizationToJSON","UiHttpOauth2SharedSecretAuthorizationToJSONTyped","instanceOfUiHttpAuthOauth2","UiHttpAuthOauth2FromJSON","UiHttpAuthOauth2FromJSONTyped","UiHttpAuthOauth2ToJSON","UiHttpAuthOauth2ToJSONTyped","UiHttpAuthType","instanceOfUiHttpAuthType","UiHttpAuthTypeFromJSON","UiHttpAuthTypeFromJSONTyped","UiHttpAuthTypeToJSON","UiHttpAuthTypeToJSONTyped","instanceOfUiHttpAuth","UiHttpAuthFromJSON","UiHttpAuthFromJSONTyped","UiHttpAuthToJSON","UiHttpAuthToJSONTyped","instanceOfUiDataSourceHttpData","UiDataSourceHttpDataFromJSON","UiDataSourceHttpDataFromJSONTyped","UiDataSourceHttpDataToJSON","UiDataSourceHttpDataToJSONTyped","instanceOfUiDataSourceOnRequest","UiDataSourceOnRequestFromJSON","UiDataSourceOnRequestFromJSONTyped","UiDataSourceOnRequestToJSON","UiDataSourceOnRequestToJSONTyped","instanceOfUiDataSource","UiDataSourceFromJSON","UiDataSourceFromJSONTyped","UiDataSourceToJSON","UiDataSourceToJSONTyped","instanceOfUiAssetCreateRequest","UiAssetCreateRequestFromJSON","UiAssetCreateRequestFromJSONTyped","UiAssetCreateRequestToJSON","UiAssetCreateRequestToJSONTyped","instanceOfDataOfferCreateRequest","DataOfferCreateRequestFromJSON","DataOfferCreateRequestFromJSONTyped","DataOfferCreateRequestToJSON","DataOfferCreateRequestToJSONTyped","instanceOfEdrDto","EdrDtoFromJSON","EdrDtoFromJSONTyped","EdrDtoToJSON","EdrDtoToJSONTyped","instanceOfIdAvailabilityResponse","IdAvailabilityResponseFromJSON","IdAvailabilityResponseFromJSONTyped","IdAvailabilityResponseToJSON","IdAvailabilityResponseToJSONTyped","instanceOfIdResponseDto","IdResponseDtoFromJSON","IdResponseDtoFromJSONTyped","IdResponseDtoToJSON","IdResponseDtoToJSONTyped","instanceOfInitiateCustomTransferRequest","InitiateCustomTransferRequestFromJSON","InitiateCustomTransferRequestFromJSONTyped","InitiateCustomTransferRequestToJSON","InitiateCustomTransferRequestToJSONTyped","instanceOfInitiateTransferRequest","InitiateTransferRequestFromJSON","InitiateTransferRequestFromJSONTyped","InitiateTransferRequestToJSON","InitiateTransferRequestToJSONTyped","instanceOfTransferProcessStatesDto","TransferProcessStatesDtoFromJSON","TransferProcessStatesDtoFromJSONTyped","TransferProcessStatesDtoToJSON","TransferProcessStatesDtoToJSONTyped","instanceOfKpiResult","KpiResultFromJSON","KpiResultFromJSONTyped","KpiResultToJSON","KpiResultToJSONTyped","instanceOfNegotiateAllQuery","NegotiateAllQueryFromJSON","NegotiateAllQueryFromJSONTyped","NegotiateAllQueryToJSON","NegotiateAllQueryToJSONTyped","instanceOfNegotiateAllResult","NegotiateAllResultFromJSON","NegotiateAllResultFromJSONTyped","NegotiateAllResultToJSON","NegotiateAllResultToJSONTyped","instanceOfPolicyDefinitionCreateDto","PolicyDefinitionCreateDtoFromJSON","PolicyDefinitionCreateDtoFromJSONTyped","PolicyDefinitionCreateDtoToJSON","PolicyDefinitionCreateDtoToJSONTyped","instanceOfUiPolicyCreateRequest","UiPolicyCreateRequestFromJSON","UiPolicyCreateRequestFromJSONTyped","UiPolicyCreateRequestToJSON","UiPolicyCreateRequestToJSONTyped","instanceOfPolicyDefinitionCreateRequest","PolicyDefinitionCreateRequestFromJSON","PolicyDefinitionCreateRequestFromJSONTyped","PolicyDefinitionCreateRequestToJSON","PolicyDefinitionCreateRequestToJSONTyped","instanceOfPolicyDefinitionDto","PolicyDefinitionDtoFromJSON","PolicyDefinitionDtoFromJSONTyped","PolicyDefinitionDtoToJSON","PolicyDefinitionDtoToJSONTyped","instanceOfPolicyDefinitionPage","PolicyDefinitionPageFromJSON","PolicyDefinitionPageFromJSONTyped","PolicyDefinitionPageToJSON","PolicyDefinitionPageToJSONTyped","instanceOfTransferHistoryEntry","TransferHistoryEntryFromJSON","TransferHistoryEntryFromJSONTyped","TransferHistoryEntryToJSON","TransferHistoryEntryToJSONTyped","instanceOfTransferHistoryPage","TransferHistoryPageFromJSON","TransferHistoryPageFromJSONTyped","TransferHistoryPageToJSON","TransferHistoryPageToJSONTyped","instanceOfTransferProcessStateResult","TransferProcessStateResultFromJSON","TransferProcessStateResultFromJSONTyped","TransferProcessStateResultToJSON","TransferProcessStateResultToJSONTyped","instanceOfUiAssetEditRequest","UiAssetEditRequestFromJSON","UiAssetEditRequestFromJSONTyped","UiAssetEditRequestToJSON","UiAssetEditRequestToJSONTyped","UiConfigFeature","instanceOfUiConfigFeature","UiConfigFeatureFromJSON","UiConfigFeatureFromJSONTyped","UiConfigFeatureToJSON","UiConfigFeatureToJSONTyped","instanceOfUiConfigPreconfiguredCounterparty","UiConfigPreconfiguredCounterpartyFromJSON","UiConfigPreconfiguredCounterpartyFromJSONTyped","UiConfigPreconfiguredCounterpartyToJSON","UiConfigPreconfiguredCounterpartyToJSONTyped","instanceOfUiConfig","UiConfigFromJSON","UiConfigFromJSONTyped","UiConfigToJSON","UiConfigToJSONTyped","instanceOfUiContractNegotiation","UiContractNegotiationFromJSON","UiContractNegotiationFromJSONTyped","UiContractNegotiationToJSON","UiContractNegotiationToJSONTyped","instanceOfUiContractOffer","UiContractOfferFromJSON","UiContractOfferFromJSONTyped","UiContractOfferToJSON","UiContractOfferToJSONTyped","instanceOfUiDataOffer","UiDataOfferFromJSON","UiDataOfferFromJSONTyped","UiDataOfferToJSON","UiDataOfferToJSONTyped","UiDataSinkHttpDataPushMethod","instanceOfUiDataSinkHttpDataPushMethod","UiDataSinkHttpDataPushMethodFromJSON","UiDataSinkHttpDataPushMethodFromJSONTyped","UiDataSinkHttpDataPushMethodToJSON","UiDataSinkHttpDataPushMethodToJSONTyped","UiHttpPushAuthType","instanceOfUiHttpPushAuthType","UiHttpPushAuthTypeFromJSON","UiHttpPushAuthTypeFromJSONTyped","UiHttpPushAuthTypeToJSON","UiHttpPushAuthTypeToJSONTyped","instanceOfUiHttpPushAuth","UiHttpPushAuthFromJSON","UiHttpPushAuthFromJSONTyped","UiHttpPushAuthToJSON","UiHttpPushAuthToJSONTyped","instanceOfUiDataSinkHttpDataPush","UiDataSinkHttpDataPushFromJSON","UiDataSinkHttpDataPushFromJSONTyped","UiDataSinkHttpDataPushToJSON","UiDataSinkHttpDataPushToJSONTyped","UiInitiateTransferType","instanceOfUiInitiateTransferType","UiInitiateTransferTypeFromJSON","UiInitiateTransferTypeFromJSONTyped","UiInitiateTransferTypeToJSON","UiInitiateTransferTypeToJSONTyped","instanceOfUiInitiateTransferRequest","UiInitiateTransferRequestFromJSON","UiInitiateTransferRequestFromJSONTyped","UiInitiateTransferRequestToJSON","UiInitiateTransferRequestToJSONTyped","instanceOfVaultSecretCreateSubmit","VaultSecretCreateSubmitFromJSON","VaultSecretCreateSubmitFromJSONTyped","VaultSecretCreateSubmitToJSON","VaultSecretCreateSubmitToJSONTyped","instanceOfVaultSecretEditPage","VaultSecretEditPageFromJSON","VaultSecretEditPageFromJSONTyped","VaultSecretEditPageToJSON","VaultSecretEditPageToJSONTyped","instanceOfVaultSecretEditSubmit","VaultSecretEditSubmitFromJSON","VaultSecretEditSubmitFromJSONTyped","VaultSecretEditSubmitToJSON","VaultSecretEditSubmitToJSONTyped","instanceOfVaultSecretListPageEntry","VaultSecretListPageEntryFromJSON","VaultSecretListPageEntryFromJSONTyped","VaultSecretListPageEntryToJSON","VaultSecretListPageEntryToJSONTyped","instanceOfVaultSecretQuery","VaultSecretQueryFromJSON","VaultSecretQueryFromJSONTyped","VaultSecretQueryToJSON","VaultSecretQueryToJSONTyped","EnterpriseEditionApi","runtime.BaseAPI","queryParameters","headerParameters","runtime.JSONApiResponse","requestParameters","runtime.RequiredError","runtime.VoidApiResponse","runtime.TextApiResponse","UIApi","UseCaseApi","util","val","assertIs","_arg","assertNever","_x","items","obj","item","validKeys","k","filtered","object","keys","arr","checker","joinValues","array","separator","_","objectUtil","first","second","ZodParsedType","getParsedType","ZodIssueCode","quotelessJson","ZodError","issues","sub","subs","actualProto","_mapper","mapper","issue","fieldErrors","processError","error","curr","i","el","formErrors","errorMap","_ctx","message","overrideErrorMap","setErrorMap","map","getErrorMap","makeIssue","path","errorMaps","issueData","fullPath","fullIssue","errorMessage","maps","m","EMPTY_PATH","addIssueToContext","ctx","x","ParseStatus","status","results","arrayValue","s","INVALID","pairs","syncPairs","pair","finalObject","DIRTY","OK","isAborted","isDirty","isValid","isAsync","errorUtil","ParseInputLazyPath","parent","handleResult","result","processCreateParams","invalid_type_error","required_error","description","iss","ZodType","def","input","_a","maybeAsyncResult","check","getIssueProperties","setError","refinementData","refinement","ZodEffects","ZodFirstPartyTypeKind","ZodOptional","ZodNullable","ZodArray","ZodPromise","option","ZodUnion","incoming","ZodIntersection","transform","defaultValueFunc","ZodDefault","ZodBranded","catchValueFunc","ZodCatch","This","target","ZodPipeline","ZodReadonly","cuidRegex","cuid2Regex","ulidRegex","uuidRegex","emailRegex","_emojiRegex","emojiRegex","ipv4Regex","ipv6Regex","datetimeRegex","args","isValidIP","ip","version","ZodString","tooBig","tooSmall","regex","validation","options","minLength","maxLength","len","ch","min","max","floatSafeRemainder","step","valDecCount","stepDecCount","decCount","valInt","stepInt","ZodNumber","kind","inclusive","ZodBigInt","ZodBoolean","ZodDate","minDate","maxDate","ZodSymbol","ZodUndefined","ZodNull","ZodAny","ZodUnknown","ZodNever","ZodVoid","schema","deepPartialify","ZodObject","newShape","fieldSchema","ZodTuple","shape","shapeKeys","extraKeys","keyValidator","unknownKeys","catchall","_b","_c","_d","defaultError","augmentation","merging","index","mask","newField","createZodEnum","handleResults","unionErrors","childCtx","dirty","types","getDiscriminator","type","ZodLazy","ZodLiteral","ZodEnum","ZodNativeEnum","ZodDiscriminatedUnion","discriminator","discriminatorValue","optionsMap","discriminatorValues","mergeValues","a","b","aType","bType","bKeys","sharedKeys","newObj","sharedValue","newArray","itemA","itemB","handleParsed","parsedLeft","parsedRight","merged","left","right","itemIndex","rest","schemas","ZodRecord","keyType","valueType","third","ZodMap","finalMap","ZodSet","finalizeSet","elements","parsedSet","element","minSize","maxSize","size","ZodFunction","makeArgsIssue","makeReturnsIssue","returns","me","parsedArgs","parsedReturns","returnType","func","getter","values","expectedValues","enumValues","opt","nativeEnumValues","promisified","effect","checkCtx","arg","processed","executeRefinement","inner","base","preprocess","newCtx","ZodNaN","BRAND","inResult","custom","fatal","p","_fatal","p2","late","instanceOfType","cls","stringType","numberType","nanType","bigIntType","booleanType","dateType","symbolType","undefinedType","nullType","anyType","unknownType","neverType","voidType","arrayType","objectType","strictObjectType","unionType","discriminatedUnionType","intersectionType","tupleType","recordType","mapType","setType","functionType","lazyType","literalType","enumType","nativeEnumType","promiseType","effectsType","optionalType","nullableType","preprocessType","pipelineType","z","needsAuthentication","httpStatus","createUrlEncodedParamsString","v","ClientCredentialsResponseSchema","fetchClientCredentials","clientCredentials","parseTokenResponse","tokenResponseParsed","AccessTokenService","ms","injectAccessTokenHeader","token","withHeader","headerName","headerValue","isHeaders","buildOAuthMiddleware","accessTokenService","buildEdcClient","opts","buildApiKeyHeader","config"],"mappings":"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","x_google_ignoreList":[114]}
1
+ {"version":3,"file":"sovity-edc-client.umd.cjs","sources":["../src/generated/runtime.ts","../src/generated/models/AssetFilterConstraintOperator.ts","../src/generated/models/AssetFilterConstraint.ts","../src/generated/models/DataSourceAvailability.ts","../src/generated/models/AssetsPageEntry.ts","../src/generated/models/PaginationRequest.ts","../src/generated/models/AssetsPageSortProperty.ts","../src/generated/models/SortByDirection.ts","../src/generated/models/SortByRequestAssetsPageSortProperty.ts","../src/generated/models/AssetsPageRequest.ts","../src/generated/models/PaginationResult.ts","../src/generated/models/AssetsPageResult.ts","../src/generated/models/BuildInfo.ts","../src/generated/models/BusinessPartnerGroupCreateSubmit.ts","../src/generated/models/BusinessPartnerGroupEditPage.ts","../src/generated/models/BusinessPartnerGroupEditSubmit.ts","../src/generated/models/BusinessPartnerGroupListPageEntry.ts","../src/generated/models/BusinessPartnerGroupQuery.ts","../src/generated/models/CallbackAddressEventType.ts","../src/generated/models/CallbackAddressDto.ts","../src/generated/models/CatalogFilterExpressionLiteralType.ts","../src/generated/models/CatalogFilterExpressionLiteral.ts","../src/generated/models/CatalogFilterExpressionOperator.ts","../src/generated/models/CatalogFilterExpression.ts","../src/generated/models/CatalogQuery.ts","../src/generated/models/CatalogSortByDirection.ts","../src/generated/models/CatalogSortBy.ts","../src/generated/models/CatalogQueryV2.ts","../src/generated/models/ConnectorLimits.ts","../src/generated/models/ContractAgreementDirection.ts","../src/generated/models/ContractTerminatedBy.ts","../src/generated/models/ContractAgreementTerminationInfo.ts","../src/generated/models/TransferProcessSimplifiedState.ts","../src/generated/models/TransferProcessState.ts","../src/generated/models/ContractAgreementTransferProcess.ts","../src/generated/models/UiCriterionLiteralType.ts","../src/generated/models/UiCriterionLiteral.ts","../src/generated/models/UiCriterionOperator.ts","../src/generated/models/UiCriterion.ts","../src/generated/models/ContractDefinitionEntry.ts","../src/generated/models/ContractDefinitionPage.ts","../src/generated/models/ContractDefinitionRequest.ts","../src/generated/models/ContractTerminationStatus.ts","../src/generated/models/UiAssetExtForSphinx.ts","../src/generated/models/UiAsset.ts","../src/generated/models/OperatorDto.ts","../src/generated/models/UiPolicyLiteralType.ts","../src/generated/models/UiPolicyLiteral.ts","../src/generated/models/UiPolicyConstraint.ts","../src/generated/models/UiPolicyExpressionType.ts","../src/generated/models/UiPolicyExpression.ts","../src/generated/models/UiPolicy.ts","../src/generated/models/ContractDetailPageResult.ts","../src/generated/models/ContractNegotiationRequest.ts","../src/generated/models/ContractNegotiationSimplifiedState.ts","../src/generated/models/ContractNegotiationState.ts","../src/generated/models/ContractNegotiationStateResult.ts","../src/generated/models/ContractTerminationRequest.ts","../src/generated/models/ContractsPageEntry.ts","../src/generated/models/ContractsPageSortProperty.ts","../src/generated/models/SortByRequestContractsPageSortProperty.ts","../src/generated/models/ContractsPageRequest.ts","../src/generated/models/ContractsPageResult.ts","../src/generated/models/DashboardCxDidConfig.ts","../src/generated/models/DashboardDapsConfig.ts","../src/generated/models/DashboardTransferAmounts.ts","../src/generated/models/DashboardPage.ts","../src/generated/models/DataOfferPublishType.ts","../src/generated/models/DataSourceType.ts","../src/generated/models/UiDataSourceHttpDataMethod.ts","../src/generated/models/UiHttpAuthApiKey.ts","../src/generated/models/UiHttpAuthBasic.ts","../src/generated/models/UiHttpOauth2AuthType.ts","../src/generated/models/UiHttpOauth2PrivateKeyAuthorization.ts","../src/generated/models/UiHttpOauth2SharedSecretAuthorization.ts","../src/generated/models/UiHttpAuthOauth2.ts","../src/generated/models/UiHttpAuthType.ts","../src/generated/models/UiHttpAuth.ts","../src/generated/models/UiDataSourceHttpData.ts","../src/generated/models/UiDataSourceOnRequest.ts","../src/generated/models/UiDataSource.ts","../src/generated/models/UiAssetCreateRequest.ts","../src/generated/models/DataOfferCreateRequest.ts","../src/generated/models/EdrDto.ts","../src/generated/models/IdAvailabilityResponse.ts","../src/generated/models/IdResponseDto.ts","../src/generated/models/InitiateCustomTransferRequest.ts","../src/generated/models/InitiateTransferRequest.ts","../src/generated/models/TransferProcessStatesDto.ts","../src/generated/models/KpiResult.ts","../src/generated/models/NegotiateAllQuery.ts","../src/generated/models/NegotiateAllResult.ts","../src/generated/models/PolicyDefinitionCreateDto.ts","../src/generated/models/UiPolicyCreateRequest.ts","../src/generated/models/PolicyDefinitionCreateRequest.ts","../src/generated/models/PolicyDefinitionDto.ts","../src/generated/models/PolicyDefinitionPage.ts","../src/generated/models/TransferHistoryEntry.ts","../src/generated/models/TransferHistoryPage.ts","../src/generated/models/TransferProcessStateResult.ts","../src/generated/models/UiAssetEditRequest.ts","../src/generated/models/UiConfigFeature.ts","../src/generated/models/UiConfigPreconfiguredCounterparty.ts","../src/generated/models/UiConfig.ts","../src/generated/models/UiContractNegotiation.ts","../src/generated/models/UiContractOffer.ts","../src/generated/models/UiDataOffer.ts","../src/generated/models/UiDataSinkHttpDataPushMethod.ts","../src/generated/models/UiHttpPushAuthType.ts","../src/generated/models/UiHttpPushAuth.ts","../src/generated/models/UiDataSinkHttpDataPush.ts","../src/generated/models/UiInitiateTransferType.ts","../src/generated/models/UiInitiateTransferRequest.ts","../src/generated/models/VaultSecretCreateSubmit.ts","../src/generated/models/VaultSecretEditPage.ts","../src/generated/models/VaultSecretEditSubmit.ts","../src/generated/models/VaultSecretListPageEntry.ts","../src/generated/models/VaultSecretQuery.ts","../src/generated/apis/EnterpriseEditionApi.ts","../src/generated/apis/UIApi.ts","../src/generated/apis/UseCaseApi.ts","../node_modules/zod/lib/index.mjs","../src/oauth2/utils/HttpUtils.ts","../src/oauth2/utils/FetchUtils.ts","../src/oauth2/AccessTokenService.ts","../src/oauth2/utils/RequestUtils.ts","../src/oauth2/Middleware.ts","../src/EdcClient.ts"],"sourcesContent":["/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n/* eslint-disable */\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\nexport const BASE_PATH = 'https://my-connector/api/management'.replace(\n /\\/+$/,\n '',\n);\n\nexport interface ConfigurationParameters {\n basePath?: string; // override base path\n fetchApi?: FetchAPI; // override for fetch implementation\n middleware?: Middleware[]; // middleware to apply before/after fetch requests\n queryParamsStringify?: (params: HTTPQuery) => string; // stringify function for query strings\n username?: string; // parameter for basic security\n password?: string; // parameter for basic security\n apiKey?:\n | string\n | Promise<string>\n | ((name: string) => string | Promise<string>); // parameter for apiKey security\n accessToken?:\n | string\n | Promise<string>\n | ((name?: string, scopes?: string[]) => string | Promise<string>); // parameter for oauth2 security\n headers?: HTTPHeaders; //header params we want to use on every request\n credentials?: RequestCredentials; //value for the credentials param we want to use on each request\n}\n\nexport class Configuration {\n constructor(private configuration: ConfigurationParameters = {}) {}\n\n set config(configuration: Configuration) {\n this.configuration = configuration;\n }\n\n get basePath(): string {\n return this.configuration.basePath != null\n ? this.configuration.basePath\n : BASE_PATH;\n }\n\n get fetchApi(): FetchAPI | undefined {\n return this.configuration.fetchApi;\n }\n\n get middleware(): Middleware[] {\n return this.configuration.middleware || [];\n }\n\n get queryParamsStringify(): (params: HTTPQuery) => string {\n return this.configuration.queryParamsStringify || querystring;\n }\n\n get username(): string | undefined {\n return this.configuration.username;\n }\n\n get password(): string | undefined {\n return this.configuration.password;\n }\n\n get apiKey(): ((name: string) => string | Promise<string>) | undefined {\n const apiKey = this.configuration.apiKey;\n if (apiKey) {\n return typeof apiKey === 'function' ? apiKey : () => apiKey;\n }\n return undefined;\n }\n\n get accessToken():\n | ((name?: string, scopes?: string[]) => string | Promise<string>)\n | undefined {\n const accessToken = this.configuration.accessToken;\n if (accessToken) {\n return typeof accessToken === 'function'\n ? accessToken\n : async () => accessToken;\n }\n return undefined;\n }\n\n get headers(): HTTPHeaders | undefined {\n return this.configuration.headers;\n }\n\n get credentials(): RequestCredentials | undefined {\n return this.configuration.credentials;\n }\n}\n\nexport const DefaultConfig = new Configuration();\n\n/**\n * This is the base class for all generated API classes.\n */\nexport class BaseAPI {\n private static readonly jsonRegex = new RegExp(\n '^(:?application/json|[^;/ \\t]+/[^;/ \\t]+[+]json)[ \\t]*(:?;.*)?$',\n 'i',\n );\n private middleware: Middleware[];\n\n constructor(protected configuration = DefaultConfig) {\n this.middleware = configuration.middleware;\n }\n\n withMiddleware<T extends BaseAPI>(this: T, ...middlewares: Middleware[]) {\n const next = this.clone<T>();\n next.middleware = next.middleware.concat(...middlewares);\n return next;\n }\n\n withPreMiddleware<T extends BaseAPI>(\n this: T,\n ...preMiddlewares: Array<Middleware['pre']>\n ) {\n const middlewares = preMiddlewares.map((pre) => ({pre}));\n return this.withMiddleware<T>(...middlewares);\n }\n\n withPostMiddleware<T extends BaseAPI>(\n this: T,\n ...postMiddlewares: Array<Middleware['post']>\n ) {\n const middlewares = postMiddlewares.map((post) => ({post}));\n return this.withMiddleware<T>(...middlewares);\n }\n\n /**\n * Check if the given MIME is a JSON MIME.\n * JSON MIME examples:\n * application/json\n * application/json; charset=UTF8\n * APPLICATION/JSON\n * application/vnd.company+json\n * @param mime - MIME (Multipurpose Internet Mail Extensions)\n * @return True if the given MIME is JSON, false otherwise.\n */\n protected isJsonMime(mime: string | null | undefined): boolean {\n if (!mime) {\n return false;\n }\n return BaseAPI.jsonRegex.test(mime);\n }\n\n protected async request(\n context: RequestOpts,\n initOverrides?: RequestInit | InitOverrideFunction,\n ): Promise<Response> {\n const {url, init} = await this.createFetchParams(\n context,\n initOverrides,\n );\n const response = await this.fetchApi(url, init);\n if (response && response.status >= 200 && response.status < 300) {\n return response;\n }\n throw new ResponseError(response, 'Response returned an error code');\n }\n\n private async createFetchParams(\n context: RequestOpts,\n initOverrides?: RequestInit | InitOverrideFunction,\n ) {\n let url = this.configuration.basePath + context.path;\n if (\n context.query !== undefined &&\n Object.keys(context.query).length !== 0\n ) {\n // only add the querystring to the URL if there are query parameters.\n // this is done to avoid urls ending with a \"?\" character which buggy webservers\n // do not handle correctly sometimes.\n url += '?' + this.configuration.queryParamsStringify(context.query);\n }\n\n const headers = Object.assign(\n {},\n this.configuration.headers,\n context.headers,\n );\n Object.keys(headers).forEach((key) =>\n headers[key] === undefined ? delete headers[key] : {},\n );\n\n const initOverrideFn =\n typeof initOverrides === 'function'\n ? initOverrides\n : async () => initOverrides;\n\n const initParams = {\n method: context.method,\n headers,\n body: context.body,\n credentials: this.configuration.credentials,\n };\n\n const overriddenInit: RequestInit = {\n ...initParams,\n ...(await initOverrideFn({\n init: initParams,\n context,\n })),\n };\n\n let body: any;\n if (\n isFormData(overriddenInit.body) ||\n overriddenInit.body instanceof URLSearchParams ||\n isBlob(overriddenInit.body)\n ) {\n body = overriddenInit.body;\n } else if (this.isJsonMime(headers['Content-Type'])) {\n body = JSON.stringify(overriddenInit.body);\n } else {\n body = overriddenInit.body;\n }\n\n const init: RequestInit = {\n ...overriddenInit,\n body,\n };\n\n return {url, init};\n }\n\n private fetchApi = async (url: string, init: RequestInit) => {\n let fetchParams = {url, init};\n for (const middleware of this.middleware) {\n if (middleware.pre) {\n fetchParams =\n (await middleware.pre({\n fetch: this.fetchApi,\n ...fetchParams,\n })) || fetchParams;\n }\n }\n let response: Response | undefined = undefined;\n try {\n response = await (this.configuration.fetchApi || fetch)(\n fetchParams.url,\n fetchParams.init,\n );\n } catch (e) {\n for (const middleware of this.middleware) {\n if (middleware.onError) {\n response =\n (await middleware.onError({\n fetch: this.fetchApi,\n url: fetchParams.url,\n init: fetchParams.init,\n error: e,\n response: response ? response.clone() : undefined,\n })) || response;\n }\n }\n if (response === undefined) {\n if (e instanceof Error) {\n throw new FetchError(\n e,\n 'The request failed and the interceptors did not return an alternative response',\n );\n } else {\n throw e;\n }\n }\n }\n for (const middleware of this.middleware) {\n if (middleware.post) {\n response =\n (await middleware.post({\n fetch: this.fetchApi,\n url: fetchParams.url,\n init: fetchParams.init,\n response: response.clone(),\n })) || response;\n }\n }\n return response;\n };\n\n /**\n * Create a shallow clone of `this` by constructing a new instance\n * and then shallow cloning data members.\n */\n private clone<T extends BaseAPI>(this: T): T {\n const constructor = this.constructor as any;\n const next = new constructor(this.configuration);\n next.middleware = this.middleware.slice();\n return next;\n }\n}\n\nfunction isBlob(value: any): value is Blob {\n return typeof Blob !== 'undefined' && value instanceof Blob;\n}\n\nfunction isFormData(value: any): value is FormData {\n return typeof FormData !== 'undefined' && value instanceof FormData;\n}\n\nexport class ResponseError extends Error {\n override name: 'ResponseError' = 'ResponseError';\n constructor(public response: Response, msg?: string) {\n super(msg);\n }\n}\n\nexport class FetchError extends Error {\n override name: 'FetchError' = 'FetchError';\n constructor(public cause: Error, msg?: string) {\n super(msg);\n }\n}\n\nexport class RequiredError extends Error {\n override name: 'RequiredError' = 'RequiredError';\n constructor(public field: string, msg?: string) {\n super(msg);\n }\n}\n\nexport const COLLECTION_FORMATS = {\n csv: ',',\n ssv: ' ',\n tsv: '\\t',\n pipes: '|',\n};\n\nexport type FetchAPI = WindowOrWorkerGlobalScope['fetch'];\n\nexport type Json = any;\nexport type HTTPMethod =\n | 'GET'\n | 'POST'\n | 'PUT'\n | 'PATCH'\n | 'DELETE'\n | 'OPTIONS'\n | 'HEAD';\nexport type HTTPHeaders = {[key: string]: string};\nexport type HTTPQuery = {\n [key: string]:\n | string\n | number\n | null\n | boolean\n | Array<string | number | null | boolean>\n | Set<string | number | null | boolean>\n | HTTPQuery;\n};\nexport type HTTPBody = Json | FormData | URLSearchParams;\nexport type HTTPRequestInit = {\n headers?: HTTPHeaders;\n method: HTTPMethod;\n credentials?: RequestCredentials;\n body?: HTTPBody;\n};\nexport type ModelPropertyNaming =\n | 'camelCase'\n | 'snake_case'\n | 'PascalCase'\n | 'original';\n\nexport type InitOverrideFunction = (requestContext: {\n init: HTTPRequestInit;\n context: RequestOpts;\n}) => Promise<RequestInit>;\n\nexport interface FetchParams {\n url: string;\n init: RequestInit;\n}\n\nexport interface RequestOpts {\n path: string;\n method: HTTPMethod;\n headers: HTTPHeaders;\n query?: HTTPQuery;\n body?: HTTPBody;\n}\n\nexport function querystring(params: HTTPQuery, prefix: string = ''): string {\n return Object.keys(params)\n .map((key) => querystringSingleKey(key, params[key], prefix))\n .filter((part) => part.length > 0)\n .join('&');\n}\n\nfunction querystringSingleKey(\n key: string,\n value:\n | string\n | number\n | null\n | undefined\n | boolean\n | Array<string | number | null | boolean>\n | Set<string | number | null | boolean>\n | HTTPQuery,\n keyPrefix: string = '',\n): string {\n const fullKey = keyPrefix + (keyPrefix.length ? `[${key}]` : key);\n if (value instanceof Array) {\n const multiValue = value\n .map((singleValue) => encodeURIComponent(String(singleValue)))\n .join(`&${encodeURIComponent(fullKey)}=`);\n return `${encodeURIComponent(fullKey)}=${multiValue}`;\n }\n if (value instanceof Set) {\n const valueAsArray = Array.from(value);\n return querystringSingleKey(key, valueAsArray, keyPrefix);\n }\n if (value instanceof Date) {\n return `${encodeURIComponent(fullKey)}=${encodeURIComponent(\n value.toISOString(),\n )}`;\n }\n if (value instanceof Object) {\n return querystring(value as HTTPQuery, fullKey);\n }\n return `${encodeURIComponent(fullKey)}=${encodeURIComponent(\n String(value),\n )}`;\n}\n\nexport function exists(json: any, key: string) {\n const value = json[key];\n return value !== null && value !== undefined;\n}\n\nexport function mapValues(data: any, fn: (item: any) => any) {\n return Object.keys(data).reduce(\n (acc, key) => ({...acc, [key]: fn(data[key])}),\n {},\n );\n}\n\nexport function canConsumeForm(consumes: Consume[]): boolean {\n for (const consume of consumes) {\n if ('multipart/form-data' === consume.contentType) {\n return true;\n }\n }\n return false;\n}\n\nexport interface Consume {\n contentType: string;\n}\n\nexport interface RequestContext {\n fetch: FetchAPI;\n url: string;\n init: RequestInit;\n}\n\nexport interface ResponseContext {\n fetch: FetchAPI;\n url: string;\n init: RequestInit;\n response: Response;\n}\n\nexport interface ErrorContext {\n fetch: FetchAPI;\n url: string;\n init: RequestInit;\n error: unknown;\n response?: Response;\n}\n\nexport interface Middleware {\n pre?(context: RequestContext): Promise<FetchParams | void>;\n post?(context: ResponseContext): Promise<Response | void>;\n onError?(context: ErrorContext): Promise<Response | void>;\n}\n\nexport interface ApiResponse<T> {\n raw: Response;\n value(): Promise<T>;\n}\n\nexport interface ResponseTransformer<T> {\n (json: any): T;\n}\n\nexport class JSONApiResponse<T> {\n constructor(\n public raw: Response,\n private transformer: ResponseTransformer<T> = (jsonValue: any) =>\n jsonValue,\n ) {}\n\n async value(): Promise<T> {\n return this.transformer(await this.raw.json());\n }\n}\n\nexport class VoidApiResponse {\n constructor(public raw: Response) {}\n\n async value(): Promise<void> {\n return undefined;\n }\n}\n\nexport class BlobApiResponse {\n constructor(public raw: Response) {}\n\n async value(): Promise<Blob> {\n return await this.raw.blob();\n }\n}\n\nexport class TextApiResponse {\n constructor(public raw: Response) {}\n\n async value(): Promise<string> {\n return await this.raw.text();\n }\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n/* eslint-disable */\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n/**\n * Operator for filter expressions\n * @export\n */\nexport const AssetFilterConstraintOperator = {\n Like: 'LIKE',\n Eq: 'EQ',\n In: 'IN',\n} as const;\nexport type AssetFilterConstraintOperator =\n (typeof AssetFilterConstraintOperator)[keyof typeof AssetFilterConstraintOperator];\n\nexport function instanceOfAssetFilterConstraintOperator(value: any): boolean {\n for (const key in AssetFilterConstraintOperator) {\n if (\n Object.prototype.hasOwnProperty.call(\n AssetFilterConstraintOperator,\n key,\n )\n ) {\n if (\n AssetFilterConstraintOperator[\n key as keyof typeof AssetFilterConstraintOperator\n ] === value\n ) {\n return true;\n }\n }\n }\n return false;\n}\n\nexport function AssetFilterConstraintOperatorFromJSON(\n json: any,\n): AssetFilterConstraintOperator {\n return AssetFilterConstraintOperatorFromJSONTyped(json, false);\n}\n\nexport function AssetFilterConstraintOperatorFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): AssetFilterConstraintOperator {\n return json as AssetFilterConstraintOperator;\n}\n\nexport function AssetFilterConstraintOperatorToJSON(\n value?: AssetFilterConstraintOperator | null,\n): any {\n return value as any;\n}\n\nexport function AssetFilterConstraintOperatorToJSONTyped(\n value: any,\n ignoreDiscriminator: boolean,\n): AssetFilterConstraintOperator {\n return value as AssetFilterConstraintOperator;\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {AssetFilterConstraintOperator} from './AssetFilterConstraintOperator';\nimport {\n AssetFilterConstraintOperatorFromJSON,\n AssetFilterConstraintOperatorFromJSONTyped,\n AssetFilterConstraintOperatorToJSON,\n AssetFilterConstraintOperatorToJSONTyped,\n} from './AssetFilterConstraintOperator';\n\n/**\n * Generic expression for filtering the data offers in the catalog\n * @export\n * @interface AssetFilterConstraint\n */\nexport interface AssetFilterConstraint {\n /**\n * Asset property path\n * @type {Array<string>}\n * @memberof AssetFilterConstraint\n */\n assetPropertyPath: Array<string>;\n /**\n * Operator\n * @type {AssetFilterConstraintOperator}\n * @memberof AssetFilterConstraint\n */\n operator: AssetFilterConstraintOperator;\n /**\n * For operators EQ and LIKE. Can contain '%' for operator LIKE.\n * @type {string}\n * @memberof AssetFilterConstraint\n */\n value?: string;\n /**\n * For operator IN.\n * @type {Array<string>}\n * @memberof AssetFilterConstraint\n */\n valueList?: Array<string>;\n}\n\n/**\n * Check if a given object implements the AssetFilterConstraint interface.\n */\nexport function instanceOfAssetFilterConstraint(\n value: any,\n): value is AssetFilterConstraint {\n if (\n !('assetPropertyPath' in value) ||\n value['assetPropertyPath'] === undefined\n )\n return false;\n if (!('operator' in value) || value['operator'] === undefined) return false;\n return true;\n}\n\nexport function AssetFilterConstraintFromJSON(\n json: any,\n): AssetFilterConstraint {\n return AssetFilterConstraintFromJSONTyped(json, false);\n}\n\nexport function AssetFilterConstraintFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): AssetFilterConstraint {\n if (json == null) {\n return json;\n }\n return {\n assetPropertyPath: json['assetPropertyPath'],\n operator: AssetFilterConstraintOperatorFromJSON(json['operator']),\n value: json['value'] == null ? undefined : json['value'],\n valueList: json['valueList'] == null ? undefined : json['valueList'],\n };\n}\n\nexport function AssetFilterConstraintToJSON(json: any): AssetFilterConstraint {\n return AssetFilterConstraintToJSONTyped(json, false);\n}\n\nexport function AssetFilterConstraintToJSONTyped(\n value?: AssetFilterConstraint | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n assetPropertyPath: value['assetPropertyPath'],\n operator: AssetFilterConstraintOperatorToJSON(value['operator']),\n value: value['value'],\n valueList: value['valueList'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n/* eslint-disable */\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n/**\n * Differentiate 'Live' Data Offers that have a real data source from 'On Request' Data Offers that contain only a contact email address for requesting an individual data offer.\n * @export\n */\nexport const DataSourceAvailability = {\n Live: 'LIVE',\n OnRequest: 'ON_REQUEST',\n} as const;\nexport type DataSourceAvailability =\n (typeof DataSourceAvailability)[keyof typeof DataSourceAvailability];\n\nexport function instanceOfDataSourceAvailability(value: any): boolean {\n for (const key in DataSourceAvailability) {\n if (Object.prototype.hasOwnProperty.call(DataSourceAvailability, key)) {\n if (\n DataSourceAvailability[\n key as keyof typeof DataSourceAvailability\n ] === value\n ) {\n return true;\n }\n }\n }\n return false;\n}\n\nexport function DataSourceAvailabilityFromJSON(\n json: any,\n): DataSourceAvailability {\n return DataSourceAvailabilityFromJSONTyped(json, false);\n}\n\nexport function DataSourceAvailabilityFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): DataSourceAvailability {\n return json as DataSourceAvailability;\n}\n\nexport function DataSourceAvailabilityToJSON(\n value?: DataSourceAvailability | null,\n): any {\n return value as any;\n}\n\nexport function DataSourceAvailabilityToJSONTyped(\n value: any,\n ignoreDiscriminator: boolean,\n): DataSourceAvailability {\n return value as DataSourceAvailability;\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {DataSourceAvailability} from './DataSourceAvailability';\nimport {\n DataSourceAvailabilityFromJSON,\n DataSourceAvailabilityFromJSONTyped,\n DataSourceAvailabilityToJSON,\n DataSourceAvailabilityToJSONTyped,\n} from './DataSourceAvailability';\n\n/**\n * Assets Page Entry\n * @export\n * @interface AssetsPageEntry\n */\nexport interface AssetsPageEntry {\n /**\n * Asset ID\n * @type {string}\n * @memberof AssetsPageEntry\n */\n assetId: string;\n /**\n * Asset Title\n * @type {string}\n * @memberof AssetsPageEntry\n */\n title: string;\n /**\n * Asset Description Short Text generated from description. Contains no markdown.\n * @type {string}\n * @memberof AssetsPageEntry\n */\n descriptionShortText?: string;\n /**\n * 'Live' vs 'On Request'\n * @type {DataSourceAvailability}\n * @memberof AssetsPageEntry\n */\n dataSourceAvailability: DataSourceAvailability;\n}\n\n/**\n * Check if a given object implements the AssetsPageEntry interface.\n */\nexport function instanceOfAssetsPageEntry(\n value: any,\n): value is AssetsPageEntry {\n if (!('assetId' in value) || value['assetId'] === undefined) return false;\n if (!('title' in value) || value['title'] === undefined) return false;\n if (\n !('dataSourceAvailability' in value) ||\n value['dataSourceAvailability'] === undefined\n )\n return false;\n return true;\n}\n\nexport function AssetsPageEntryFromJSON(json: any): AssetsPageEntry {\n return AssetsPageEntryFromJSONTyped(json, false);\n}\n\nexport function AssetsPageEntryFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): AssetsPageEntry {\n if (json == null) {\n return json;\n }\n return {\n assetId: json['assetId'],\n title: json['title'],\n descriptionShortText:\n json['descriptionShortText'] == null\n ? undefined\n : json['descriptionShortText'],\n dataSourceAvailability: DataSourceAvailabilityFromJSON(\n json['dataSourceAvailability'],\n ),\n };\n}\n\nexport function AssetsPageEntryToJSON(json: any): AssetsPageEntry {\n return AssetsPageEntryToJSONTyped(json, false);\n}\n\nexport function AssetsPageEntryToJSONTyped(\n value?: AssetsPageEntry | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n assetId: value['assetId'],\n title: value['title'],\n descriptionShortText: value['descriptionShortText'],\n dataSourceAvailability: DataSourceAvailabilityToJSON(\n value['dataSourceAvailability'],\n ),\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\n\n/**\n * Specify pagination for list pages\n * @export\n * @interface PaginationRequest\n */\nexport interface PaginationRequest {\n /**\n * Page Index. Defaults to 1\n * @type {number}\n * @memberof PaginationRequest\n */\n pageOneBased?: number;\n /**\n * Size of each page. If left out, show all entries\n * @type {number}\n * @memberof PaginationRequest\n */\n pageSize?: number;\n}\n\n/**\n * Check if a given object implements the PaginationRequest interface.\n */\nexport function instanceOfPaginationRequest(\n value: any,\n): value is PaginationRequest {\n return true;\n}\n\nexport function PaginationRequestFromJSON(json: any): PaginationRequest {\n return PaginationRequestFromJSONTyped(json, false);\n}\n\nexport function PaginationRequestFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): PaginationRequest {\n if (json == null) {\n return json;\n }\n return {\n pageOneBased:\n json['pageOneBased'] == null ? undefined : json['pageOneBased'],\n pageSize: json['pageSize'] == null ? undefined : json['pageSize'],\n };\n}\n\nexport function PaginationRequestToJSON(json: any): PaginationRequest {\n return PaginationRequestToJSONTyped(json, false);\n}\n\nexport function PaginationRequestToJSONTyped(\n value?: PaginationRequest | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n pageOneBased: value['pageOneBased'],\n pageSize: value['pageSize'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n/* eslint-disable */\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n/**\n * Properties, for which sorting in the assets page is enabled\n * @export\n */\nexport const AssetsPageSortProperty = {\n Title: 'TITLE',\n Description: 'DESCRIPTION',\n} as const;\nexport type AssetsPageSortProperty =\n (typeof AssetsPageSortProperty)[keyof typeof AssetsPageSortProperty];\n\nexport function instanceOfAssetsPageSortProperty(value: any): boolean {\n for (const key in AssetsPageSortProperty) {\n if (Object.prototype.hasOwnProperty.call(AssetsPageSortProperty, key)) {\n if (\n AssetsPageSortProperty[\n key as keyof typeof AssetsPageSortProperty\n ] === value\n ) {\n return true;\n }\n }\n }\n return false;\n}\n\nexport function AssetsPageSortPropertyFromJSON(\n json: any,\n): AssetsPageSortProperty {\n return AssetsPageSortPropertyFromJSONTyped(json, false);\n}\n\nexport function AssetsPageSortPropertyFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): AssetsPageSortProperty {\n return json as AssetsPageSortProperty;\n}\n\nexport function AssetsPageSortPropertyToJSON(\n value?: AssetsPageSortProperty | null,\n): any {\n return value as any;\n}\n\nexport function AssetsPageSortPropertyToJSONTyped(\n value: any,\n ignoreDiscriminator: boolean,\n): AssetsPageSortProperty {\n return value as AssetsPageSortProperty;\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n/* eslint-disable */\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n/**\n * Direction of sort in list pages\n * @export\n */\nexport const SortByDirection = {\n Descending: 'DESCENDING',\n Ascending: 'ASCENDING',\n} as const;\nexport type SortByDirection =\n (typeof SortByDirection)[keyof typeof SortByDirection];\n\nexport function instanceOfSortByDirection(value: any): boolean {\n for (const key in SortByDirection) {\n if (Object.prototype.hasOwnProperty.call(SortByDirection, key)) {\n if (\n SortByDirection[key as keyof typeof SortByDirection] === value\n ) {\n return true;\n }\n }\n }\n return false;\n}\n\nexport function SortByDirectionFromJSON(json: any): SortByDirection {\n return SortByDirectionFromJSONTyped(json, false);\n}\n\nexport function SortByDirectionFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): SortByDirection {\n return json as SortByDirection;\n}\n\nexport function SortByDirectionToJSON(value?: SortByDirection | null): any {\n return value as any;\n}\n\nexport function SortByDirectionToJSONTyped(\n value: any,\n ignoreDiscriminator: boolean,\n): SortByDirection {\n return value as SortByDirection;\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {AssetsPageSortProperty} from './AssetsPageSortProperty';\nimport {\n AssetsPageSortPropertyFromJSON,\n AssetsPageSortPropertyFromJSONTyped,\n AssetsPageSortPropertyToJSON,\n AssetsPageSortPropertyToJSONTyped,\n} from './AssetsPageSortProperty';\nimport type {SortByDirection} from './SortByDirection';\nimport {\n SortByDirectionFromJSON,\n SortByDirectionFromJSONTyped,\n SortByDirectionToJSON,\n SortByDirectionToJSONTyped,\n} from './SortByDirection';\n\n/**\n * Sort a column of list pages by a given property\n * @export\n * @interface SortByRequestAssetsPageSortProperty\n */\nexport interface SortByRequestAssetsPageSortProperty {\n /**\n * Name of the column to sort for\n * @type {AssetsPageSortProperty}\n * @memberof SortByRequestAssetsPageSortProperty\n */\n field: AssetsPageSortProperty;\n /**\n * sort direction\n * @type {SortByDirection}\n * @memberof SortByRequestAssetsPageSortProperty\n */\n direction: SortByDirection;\n}\n\n/**\n * Check if a given object implements the SortByRequestAssetsPageSortProperty interface.\n */\nexport function instanceOfSortByRequestAssetsPageSortProperty(\n value: any,\n): value is SortByRequestAssetsPageSortProperty {\n if (!('field' in value) || value['field'] === undefined) return false;\n if (!('direction' in value) || value['direction'] === undefined)\n return false;\n return true;\n}\n\nexport function SortByRequestAssetsPageSortPropertyFromJSON(\n json: any,\n): SortByRequestAssetsPageSortProperty {\n return SortByRequestAssetsPageSortPropertyFromJSONTyped(json, false);\n}\n\nexport function SortByRequestAssetsPageSortPropertyFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): SortByRequestAssetsPageSortProperty {\n if (json == null) {\n return json;\n }\n return {\n field: AssetsPageSortPropertyFromJSON(json['field']),\n direction: SortByDirectionFromJSON(json['direction']),\n };\n}\n\nexport function SortByRequestAssetsPageSortPropertyToJSON(\n json: any,\n): SortByRequestAssetsPageSortProperty {\n return SortByRequestAssetsPageSortPropertyToJSONTyped(json, false);\n}\n\nexport function SortByRequestAssetsPageSortPropertyToJSONTyped(\n value?: SortByRequestAssetsPageSortProperty | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n field: AssetsPageSortPropertyToJSON(value['field']),\n direction: SortByDirectionToJSON(value['direction']),\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {PaginationRequest} from './PaginationRequest';\nimport {\n PaginationRequestFromJSON,\n PaginationRequestFromJSONTyped,\n PaginationRequestToJSON,\n PaginationRequestToJSONTyped,\n} from './PaginationRequest';\nimport type {SortByRequestAssetsPageSortProperty} from './SortByRequestAssetsPageSortProperty';\nimport {\n SortByRequestAssetsPageSortPropertyFromJSON,\n SortByRequestAssetsPageSortPropertyFromJSONTyped,\n SortByRequestAssetsPageSortPropertyToJSON,\n SortByRequestAssetsPageSortPropertyToJSONTyped,\n} from './SortByRequestAssetsPageSortProperty';\n\n/**\n * Properties to filter and sort the assets page\n * @export\n * @interface AssetsPageRequest\n */\nexport interface AssetsPageRequest {\n /**\n * Pagination\n * @type {PaginationRequest}\n * @memberof AssetsPageRequest\n */\n pagination?: PaginationRequest;\n /**\n * Query for filtering. If empty, show all entries\n * @type {string}\n * @memberof AssetsPageRequest\n */\n searchText?: string;\n /**\n * Sort List by properties in order of appearance in the array.\n * @type {Array<SortByRequestAssetsPageSortProperty>}\n * @memberof AssetsPageRequest\n */\n sortBy?: Array<SortByRequestAssetsPageSortProperty>;\n}\n\n/**\n * Check if a given object implements the AssetsPageRequest interface.\n */\nexport function instanceOfAssetsPageRequest(\n value: any,\n): value is AssetsPageRequest {\n return true;\n}\n\nexport function AssetsPageRequestFromJSON(json: any): AssetsPageRequest {\n return AssetsPageRequestFromJSONTyped(json, false);\n}\n\nexport function AssetsPageRequestFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): AssetsPageRequest {\n if (json == null) {\n return json;\n }\n return {\n pagination:\n json['pagination'] == null\n ? undefined\n : PaginationRequestFromJSON(json['pagination']),\n searchText: json['searchText'] == null ? undefined : json['searchText'],\n sortBy:\n json['sortBy'] == null\n ? undefined\n : (json['sortBy'] as Array<any>).map(\n SortByRequestAssetsPageSortPropertyFromJSON,\n ),\n };\n}\n\nexport function AssetsPageRequestToJSON(json: any): AssetsPageRequest {\n return AssetsPageRequestToJSONTyped(json, false);\n}\n\nexport function AssetsPageRequestToJSONTyped(\n value?: AssetsPageRequest | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n pagination: PaginationRequestToJSON(value['pagination']),\n searchText: value['searchText'],\n sortBy:\n value['sortBy'] == null\n ? undefined\n : (value['sortBy'] as Array<any>).map(\n SortByRequestAssetsPageSortPropertyToJSON,\n ),\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\n\n/**\n * Pagination Info for Table Pages\n * @export\n * @interface PaginationResult\n */\nexport interface PaginationResult {\n /**\n * Number of items on all pages.\n * @type {number}\n * @memberof PaginationResult\n */\n totalItems: number;\n /**\n * Index of the last page. 1 Based\n * @type {number}\n * @memberof PaginationResult\n */\n lastPage: number;\n /**\n * Index of the previous page. 1 Based\n * @type {number}\n * @memberof PaginationResult\n */\n previousPage?: number;\n /**\n * Index of the current page. 1 Based\n * @type {number}\n * @memberof PaginationResult\n */\n currentPage: number;\n /**\n * Index of the next page. 1 Based\n * @type {number}\n * @memberof PaginationResult\n */\n nextPage?: number;\n /**\n * Index of the item at the start of the current page. 1 Based. 0 if empty page\n * @type {number}\n * @memberof PaginationResult\n */\n pageStart: number;\n /**\n * Index of the item at the end of the current page. 1 Based. 0 if empty page\n * @type {number}\n * @memberof PaginationResult\n */\n pageEnd: number;\n /**\n * Size of the current page.\n * @type {number}\n * @memberof PaginationResult\n */\n pageSize: number;\n}\n\n/**\n * Check if a given object implements the PaginationResult interface.\n */\nexport function instanceOfPaginationResult(\n value: any,\n): value is PaginationResult {\n if (!('totalItems' in value) || value['totalItems'] === undefined)\n return false;\n if (!('lastPage' in value) || value['lastPage'] === undefined) return false;\n if (!('currentPage' in value) || value['currentPage'] === undefined)\n return false;\n if (!('pageStart' in value) || value['pageStart'] === undefined)\n return false;\n if (!('pageEnd' in value) || value['pageEnd'] === undefined) return false;\n if (!('pageSize' in value) || value['pageSize'] === undefined) return false;\n return true;\n}\n\nexport function PaginationResultFromJSON(json: any): PaginationResult {\n return PaginationResultFromJSONTyped(json, false);\n}\n\nexport function PaginationResultFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): PaginationResult {\n if (json == null) {\n return json;\n }\n return {\n totalItems: json['totalItems'],\n lastPage: json['lastPage'],\n previousPage:\n json['previousPage'] == null ? undefined : json['previousPage'],\n currentPage: json['currentPage'],\n nextPage: json['nextPage'] == null ? undefined : json['nextPage'],\n pageStart: json['pageStart'],\n pageEnd: json['pageEnd'],\n pageSize: json['pageSize'],\n };\n}\n\nexport function PaginationResultToJSON(json: any): PaginationResult {\n return PaginationResultToJSONTyped(json, false);\n}\n\nexport function PaginationResultToJSONTyped(\n value?: PaginationResult | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n totalItems: value['totalItems'],\n lastPage: value['lastPage'],\n previousPage: value['previousPage'],\n currentPage: value['currentPage'],\n nextPage: value['nextPage'],\n pageStart: value['pageStart'],\n pageEnd: value['pageEnd'],\n pageSize: value['pageSize'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {AssetsPageEntry} from './AssetsPageEntry';\nimport {\n AssetsPageEntryFromJSON,\n AssetsPageEntryFromJSONTyped,\n AssetsPageEntryToJSON,\n AssetsPageEntryToJSONTyped,\n} from './AssetsPageEntry';\nimport type {PaginationResult} from './PaginationResult';\nimport {\n PaginationResultFromJSON,\n PaginationResultFromJSONTyped,\n PaginationResultToJSON,\n PaginationResultToJSONTyped,\n} from './PaginationResult';\n\n/**\n * Assets Page Result\n * @export\n * @interface AssetsPageResult\n */\nexport interface AssetsPageResult {\n /**\n * List of assets\n * @type {Array<AssetsPageEntry>}\n * @memberof AssetsPageResult\n */\n assets: Array<AssetsPageEntry>;\n /**\n * Pagination Information\n * @type {PaginationResult}\n * @memberof AssetsPageResult\n */\n pagination: PaginationResult;\n}\n\n/**\n * Check if a given object implements the AssetsPageResult interface.\n */\nexport function instanceOfAssetsPageResult(\n value: any,\n): value is AssetsPageResult {\n if (!('assets' in value) || value['assets'] === undefined) return false;\n if (!('pagination' in value) || value['pagination'] === undefined)\n return false;\n return true;\n}\n\nexport function AssetsPageResultFromJSON(json: any): AssetsPageResult {\n return AssetsPageResultFromJSONTyped(json, false);\n}\n\nexport function AssetsPageResultFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): AssetsPageResult {\n if (json == null) {\n return json;\n }\n return {\n assets: (json['assets'] as Array<any>).map(AssetsPageEntryFromJSON),\n pagination: PaginationResultFromJSON(json['pagination']),\n };\n}\n\nexport function AssetsPageResultToJSON(json: any): AssetsPageResult {\n return AssetsPageResultToJSONTyped(json, false);\n}\n\nexport function AssetsPageResultToJSONTyped(\n value?: AssetsPageResult | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n assets: (value['assets'] as Array<any>).map(AssetsPageEntryToJSON),\n pagination: PaginationResultToJSON(value['pagination']),\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\n\n/**\n * Build information about the connector backend.\n * @export\n * @interface BuildInfo\n */\nexport interface BuildInfo {\n /**\n * Container build date. May be overridden.\n * @type {string}\n * @memberof BuildInfo\n */\n buildDate: string;\n /**\n * Container build release version or a combination of last tag + commit hash. May be overridden.\n * @type {string}\n * @memberof BuildInfo\n */\n buildVersion: string;\n}\n\n/**\n * Check if a given object implements the BuildInfo interface.\n */\nexport function instanceOfBuildInfo(value: any): value is BuildInfo {\n if (!('buildDate' in value) || value['buildDate'] === undefined)\n return false;\n if (!('buildVersion' in value) || value['buildVersion'] === undefined)\n return false;\n return true;\n}\n\nexport function BuildInfoFromJSON(json: any): BuildInfo {\n return BuildInfoFromJSONTyped(json, false);\n}\n\nexport function BuildInfoFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): BuildInfo {\n if (json == null) {\n return json;\n }\n return {\n buildDate: json['buildDate'],\n buildVersion: json['buildVersion'],\n };\n}\n\nexport function BuildInfoToJSON(json: any): BuildInfo {\n return BuildInfoToJSONTyped(json, false);\n}\n\nexport function BuildInfoToJSONTyped(\n value?: BuildInfo | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n buildDate: value['buildDate'],\n buildVersion: value['buildVersion'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\n\n/**\n * Business Partner Group Create Submit\n * @export\n * @interface BusinessPartnerGroupCreateSubmit\n */\nexport interface BusinessPartnerGroupCreateSubmit {\n /**\n * Business Partner Group ID\n * @type {string}\n * @memberof BusinessPartnerGroupCreateSubmit\n */\n groupId: string;\n /**\n * List of BPNs in the created group\n * @type {Array<string>}\n * @memberof BusinessPartnerGroupCreateSubmit\n */\n businessPartnerNumbers: Array<string>;\n}\n\n/**\n * Check if a given object implements the BusinessPartnerGroupCreateSubmit interface.\n */\nexport function instanceOfBusinessPartnerGroupCreateSubmit(\n value: any,\n): value is BusinessPartnerGroupCreateSubmit {\n if (!('groupId' in value) || value['groupId'] === undefined) return false;\n if (\n !('businessPartnerNumbers' in value) ||\n value['businessPartnerNumbers'] === undefined\n )\n return false;\n return true;\n}\n\nexport function BusinessPartnerGroupCreateSubmitFromJSON(\n json: any,\n): BusinessPartnerGroupCreateSubmit {\n return BusinessPartnerGroupCreateSubmitFromJSONTyped(json, false);\n}\n\nexport function BusinessPartnerGroupCreateSubmitFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): BusinessPartnerGroupCreateSubmit {\n if (json == null) {\n return json;\n }\n return {\n groupId: json['groupId'],\n businessPartnerNumbers: json['businessPartnerNumbers'],\n };\n}\n\nexport function BusinessPartnerGroupCreateSubmitToJSON(\n json: any,\n): BusinessPartnerGroupCreateSubmit {\n return BusinessPartnerGroupCreateSubmitToJSONTyped(json, false);\n}\n\nexport function BusinessPartnerGroupCreateSubmitToJSONTyped(\n value?: BusinessPartnerGroupCreateSubmit | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n groupId: value['groupId'],\n businessPartnerNumbers: value['businessPartnerNumbers'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\n\n/**\n * Business Partner Group Edit Page\n * @export\n * @interface BusinessPartnerGroupEditPage\n */\nexport interface BusinessPartnerGroupEditPage {\n /**\n * Business Partner Group ID\n * @type {string}\n * @memberof BusinessPartnerGroupEditPage\n */\n groupId: string;\n /**\n * List of BPNs in this group\n * @type {Array<string>}\n * @memberof BusinessPartnerGroupEditPage\n */\n businessPartnerNumbers: Array<string>;\n}\n\n/**\n * Check if a given object implements the BusinessPartnerGroupEditPage interface.\n */\nexport function instanceOfBusinessPartnerGroupEditPage(\n value: any,\n): value is BusinessPartnerGroupEditPage {\n if (!('groupId' in value) || value['groupId'] === undefined) return false;\n if (\n !('businessPartnerNumbers' in value) ||\n value['businessPartnerNumbers'] === undefined\n )\n return false;\n return true;\n}\n\nexport function BusinessPartnerGroupEditPageFromJSON(\n json: any,\n): BusinessPartnerGroupEditPage {\n return BusinessPartnerGroupEditPageFromJSONTyped(json, false);\n}\n\nexport function BusinessPartnerGroupEditPageFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): BusinessPartnerGroupEditPage {\n if (json == null) {\n return json;\n }\n return {\n groupId: json['groupId'],\n businessPartnerNumbers: json['businessPartnerNumbers'],\n };\n}\n\nexport function BusinessPartnerGroupEditPageToJSON(\n json: any,\n): BusinessPartnerGroupEditPage {\n return BusinessPartnerGroupEditPageToJSONTyped(json, false);\n}\n\nexport function BusinessPartnerGroupEditPageToJSONTyped(\n value?: BusinessPartnerGroupEditPage | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n groupId: value['groupId'],\n businessPartnerNumbers: value['businessPartnerNumbers'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\n\n/**\n * Business Partner Group Edit Submit\n * @export\n * @interface BusinessPartnerGroupEditSubmit\n */\nexport interface BusinessPartnerGroupEditSubmit {\n /**\n * List of BPNs in the edited group\n * @type {Array<string>}\n * @memberof BusinessPartnerGroupEditSubmit\n */\n businessPartnerNumbers: Array<string>;\n}\n\n/**\n * Check if a given object implements the BusinessPartnerGroupEditSubmit interface.\n */\nexport function instanceOfBusinessPartnerGroupEditSubmit(\n value: any,\n): value is BusinessPartnerGroupEditSubmit {\n if (\n !('businessPartnerNumbers' in value) ||\n value['businessPartnerNumbers'] === undefined\n )\n return false;\n return true;\n}\n\nexport function BusinessPartnerGroupEditSubmitFromJSON(\n json: any,\n): BusinessPartnerGroupEditSubmit {\n return BusinessPartnerGroupEditSubmitFromJSONTyped(json, false);\n}\n\nexport function BusinessPartnerGroupEditSubmitFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): BusinessPartnerGroupEditSubmit {\n if (json == null) {\n return json;\n }\n return {\n businessPartnerNumbers: json['businessPartnerNumbers'],\n };\n}\n\nexport function BusinessPartnerGroupEditSubmitToJSON(\n json: any,\n): BusinessPartnerGroupEditSubmit {\n return BusinessPartnerGroupEditSubmitToJSONTyped(json, false);\n}\n\nexport function BusinessPartnerGroupEditSubmitToJSONTyped(\n value?: BusinessPartnerGroupEditSubmit | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n businessPartnerNumbers: value['businessPartnerNumbers'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\n\n/**\n * Business Partner Group List Page Entry\n * @export\n * @interface BusinessPartnerGroupListPageEntry\n */\nexport interface BusinessPartnerGroupListPageEntry {\n /**\n * Business Partner Group Id\n * @type {string}\n * @memberof BusinessPartnerGroupListPageEntry\n */\n groupId: string;\n /**\n * List of BPNs in this group\n * @type {Array<string>}\n * @memberof BusinessPartnerGroupListPageEntry\n */\n businessPartnerNumbers: Array<string>;\n}\n\n/**\n * Check if a given object implements the BusinessPartnerGroupListPageEntry interface.\n */\nexport function instanceOfBusinessPartnerGroupListPageEntry(\n value: any,\n): value is BusinessPartnerGroupListPageEntry {\n if (!('groupId' in value) || value['groupId'] === undefined) return false;\n if (\n !('businessPartnerNumbers' in value) ||\n value['businessPartnerNumbers'] === undefined\n )\n return false;\n return true;\n}\n\nexport function BusinessPartnerGroupListPageEntryFromJSON(\n json: any,\n): BusinessPartnerGroupListPageEntry {\n return BusinessPartnerGroupListPageEntryFromJSONTyped(json, false);\n}\n\nexport function BusinessPartnerGroupListPageEntryFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): BusinessPartnerGroupListPageEntry {\n if (json == null) {\n return json;\n }\n return {\n groupId: json['groupId'],\n businessPartnerNumbers: json['businessPartnerNumbers'],\n };\n}\n\nexport function BusinessPartnerGroupListPageEntryToJSON(\n json: any,\n): BusinessPartnerGroupListPageEntry {\n return BusinessPartnerGroupListPageEntryToJSONTyped(json, false);\n}\n\nexport function BusinessPartnerGroupListPageEntryToJSONTyped(\n value?: BusinessPartnerGroupListPageEntry | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n groupId: value['groupId'],\n businessPartnerNumbers: value['businessPartnerNumbers'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\n\n/**\n * Query for filtering Business Partner Groups\n * @export\n * @interface BusinessPartnerGroupQuery\n */\nexport interface BusinessPartnerGroupQuery {\n /**\n * Search Query String\n * @type {string}\n * @memberof BusinessPartnerGroupQuery\n */\n searchQuery?: string;\n /**\n * Number of items to display\n * @type {number}\n * @memberof BusinessPartnerGroupQuery\n */\n limit?: number;\n}\n\n/**\n * Check if a given object implements the BusinessPartnerGroupQuery interface.\n */\nexport function instanceOfBusinessPartnerGroupQuery(\n value: any,\n): value is BusinessPartnerGroupQuery {\n return true;\n}\n\nexport function BusinessPartnerGroupQueryFromJSON(\n json: any,\n): BusinessPartnerGroupQuery {\n return BusinessPartnerGroupQueryFromJSONTyped(json, false);\n}\n\nexport function BusinessPartnerGroupQueryFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): BusinessPartnerGroupQuery {\n if (json == null) {\n return json;\n }\n return {\n searchQuery:\n json['searchQuery'] == null ? undefined : json['searchQuery'],\n limit: json['limit'] == null ? undefined : json['limit'],\n };\n}\n\nexport function BusinessPartnerGroupQueryToJSON(\n json: any,\n): BusinessPartnerGroupQuery {\n return BusinessPartnerGroupQueryToJSONTyped(json, false);\n}\n\nexport function BusinessPartnerGroupQueryToJSONTyped(\n value?: BusinessPartnerGroupQuery | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n searchQuery: value['searchQuery'],\n limit: value['limit'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n/* eslint-disable */\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n/**\n * Currently Supported Event Types\n * @export\n */\nexport const CallbackAddressEventType = {\n ContractNegotiationFinalized: 'CONTRACT_NEGOTIATION_FINALIZED',\n ContractNegotiationTerminated: 'CONTRACT_NEGOTIATION_TERMINATED',\n TransferProcessStarted: 'TRANSFER_PROCESS_STARTED',\n TransferProcessTerminated: 'TRANSFER_PROCESS_TERMINATED',\n TransferProcessCompleted: 'TRANSFER_PROCESS_COMPLETED',\n} as const;\nexport type CallbackAddressEventType =\n (typeof CallbackAddressEventType)[keyof typeof CallbackAddressEventType];\n\nexport function instanceOfCallbackAddressEventType(value: any): boolean {\n for (const key in CallbackAddressEventType) {\n if (\n Object.prototype.hasOwnProperty.call(CallbackAddressEventType, key)\n ) {\n if (\n CallbackAddressEventType[\n key as keyof typeof CallbackAddressEventType\n ] === value\n ) {\n return true;\n }\n }\n }\n return false;\n}\n\nexport function CallbackAddressEventTypeFromJSON(\n json: any,\n): CallbackAddressEventType {\n return CallbackAddressEventTypeFromJSONTyped(json, false);\n}\n\nexport function CallbackAddressEventTypeFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): CallbackAddressEventType {\n return json as CallbackAddressEventType;\n}\n\nexport function CallbackAddressEventTypeToJSON(\n value?: CallbackAddressEventType | null,\n): any {\n return value as any;\n}\n\nexport function CallbackAddressEventTypeToJSONTyped(\n value: any,\n ignoreDiscriminator: boolean,\n): CallbackAddressEventType {\n return value as CallbackAddressEventType;\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {CallbackAddressEventType} from './CallbackAddressEventType';\nimport {\n CallbackAddressEventTypeFromJSON,\n CallbackAddressEventTypeFromJSONTyped,\n CallbackAddressEventTypeToJSON,\n CallbackAddressEventTypeToJSONTyped,\n} from './CallbackAddressEventType';\n\n/**\n * Callback address to be called after a transfer or negotiation success/failure\n * @export\n * @interface CallbackAddressDto\n */\nexport interface CallbackAddressDto {\n /**\n * URL to be called when the event is fired\n * @type {string}\n * @memberof CallbackAddressDto\n */\n url: string;\n /**\n * Event Types to subscribe to.\n * @type {Array<CallbackAddressEventType>}\n * @memberof CallbackAddressDto\n */\n events: Array<CallbackAddressEventType>;\n /**\n * Authentication: Header Name\n * @type {string}\n * @memberof CallbackAddressDto\n */\n authHeaderName?: string;\n /**\n * Authentication: Header Value (Vault Secret Name)\n * @type {string}\n * @memberof CallbackAddressDto\n */\n authHeaderVaultSecretName?: string;\n}\n\n/**\n * Check if a given object implements the CallbackAddressDto interface.\n */\nexport function instanceOfCallbackAddressDto(\n value: any,\n): value is CallbackAddressDto {\n if (!('url' in value) || value['url'] === undefined) return false;\n if (!('events' in value) || value['events'] === undefined) return false;\n return true;\n}\n\nexport function CallbackAddressDtoFromJSON(json: any): CallbackAddressDto {\n return CallbackAddressDtoFromJSONTyped(json, false);\n}\n\nexport function CallbackAddressDtoFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): CallbackAddressDto {\n if (json == null) {\n return json;\n }\n return {\n url: json['url'],\n events: (json['events'] as Array<any>).map(\n CallbackAddressEventTypeFromJSON,\n ),\n authHeaderName:\n json['authHeaderName'] == null ? undefined : json['authHeaderName'],\n authHeaderVaultSecretName:\n json['authHeaderVaultSecretName'] == null\n ? undefined\n : json['authHeaderVaultSecretName'],\n };\n}\n\nexport function CallbackAddressDtoToJSON(json: any): CallbackAddressDto {\n return CallbackAddressDtoToJSONTyped(json, false);\n}\n\nexport function CallbackAddressDtoToJSONTyped(\n value?: CallbackAddressDto | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n url: value['url'],\n events: (value['events'] as Array<any>).map(\n CallbackAddressEventTypeToJSON,\n ),\n authHeaderName: value['authHeaderName'],\n authHeaderVaultSecretName: value['authHeaderVaultSecretName'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n/* eslint-disable */\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n/**\n * Value type of a filter expression criterion\n * @export\n */\nexport const CatalogFilterExpressionLiteralType = {\n Value: 'VALUE',\n ValueList: 'VALUE_LIST',\n} as const;\nexport type CatalogFilterExpressionLiteralType =\n (typeof CatalogFilterExpressionLiteralType)[keyof typeof CatalogFilterExpressionLiteralType];\n\nexport function instanceOfCatalogFilterExpressionLiteralType(\n value: any,\n): boolean {\n for (const key in CatalogFilterExpressionLiteralType) {\n if (\n Object.prototype.hasOwnProperty.call(\n CatalogFilterExpressionLiteralType,\n key,\n )\n ) {\n if (\n CatalogFilterExpressionLiteralType[\n key as keyof typeof CatalogFilterExpressionLiteralType\n ] === value\n ) {\n return true;\n }\n }\n }\n return false;\n}\n\nexport function CatalogFilterExpressionLiteralTypeFromJSON(\n json: any,\n): CatalogFilterExpressionLiteralType {\n return CatalogFilterExpressionLiteralTypeFromJSONTyped(json, false);\n}\n\nexport function CatalogFilterExpressionLiteralTypeFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): CatalogFilterExpressionLiteralType {\n return json as CatalogFilterExpressionLiteralType;\n}\n\nexport function CatalogFilterExpressionLiteralTypeToJSON(\n value?: CatalogFilterExpressionLiteralType | null,\n): any {\n return value as any;\n}\n\nexport function CatalogFilterExpressionLiteralTypeToJSONTyped(\n value: any,\n ignoreDiscriminator: boolean,\n): CatalogFilterExpressionLiteralType {\n return value as CatalogFilterExpressionLiteralType;\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {CatalogFilterExpressionLiteralType} from './CatalogFilterExpressionLiteralType';\nimport {\n CatalogFilterExpressionLiteralTypeFromJSON,\n CatalogFilterExpressionLiteralTypeFromJSONTyped,\n CatalogFilterExpressionLiteralTypeToJSON,\n CatalogFilterExpressionLiteralTypeToJSONTyped,\n} from './CatalogFilterExpressionLiteralType';\n\n/**\n * FilterExpression Criterion Literal\n * @export\n * @interface CatalogFilterExpressionLiteral\n */\nexport interface CatalogFilterExpressionLiteral {\n /**\n *\n * @type {CatalogFilterExpressionLiteralType}\n * @memberof CatalogFilterExpressionLiteral\n * @deprecated\n */\n type?: CatalogFilterExpressionLiteralType;\n /**\n * Only for type VALUE. The single value representation.\n * @type {string}\n * @memberof CatalogFilterExpressionLiteral\n */\n value?: string;\n /**\n * Only for type VALUE_LIST. List of values, e.g. for the IN-Operator.\n * @type {Array<string>}\n * @memberof CatalogFilterExpressionLiteral\n */\n valueList?: Array<string>;\n}\n\n/**\n * Check if a given object implements the CatalogFilterExpressionLiteral interface.\n */\nexport function instanceOfCatalogFilterExpressionLiteral(\n value: any,\n): value is CatalogFilterExpressionLiteral {\n return true;\n}\n\nexport function CatalogFilterExpressionLiteralFromJSON(\n json: any,\n): CatalogFilterExpressionLiteral {\n return CatalogFilterExpressionLiteralFromJSONTyped(json, false);\n}\n\nexport function CatalogFilterExpressionLiteralFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): CatalogFilterExpressionLiteral {\n if (json == null) {\n return json;\n }\n return {\n type:\n json['type'] == null\n ? undefined\n : CatalogFilterExpressionLiteralTypeFromJSON(json['type']),\n value: json['value'] == null ? undefined : json['value'],\n valueList: json['valueList'] == null ? undefined : json['valueList'],\n };\n}\n\nexport function CatalogFilterExpressionLiteralToJSON(\n json: any,\n): CatalogFilterExpressionLiteral {\n return CatalogFilterExpressionLiteralToJSONTyped(json, false);\n}\n\nexport function CatalogFilterExpressionLiteralToJSONTyped(\n value?: CatalogFilterExpressionLiteral | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n type: CatalogFilterExpressionLiteralTypeToJSON(value['type']),\n value: value['value'],\n valueList: value['valueList'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n/* eslint-disable */\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n/**\n * Operator for filter expressions\n * @export\n */\nexport const CatalogFilterExpressionOperator = {\n Like: 'LIKE',\n Eq: 'EQ',\n In: 'IN',\n} as const;\nexport type CatalogFilterExpressionOperator =\n (typeof CatalogFilterExpressionOperator)[keyof typeof CatalogFilterExpressionOperator];\n\nexport function instanceOfCatalogFilterExpressionOperator(value: any): boolean {\n for (const key in CatalogFilterExpressionOperator) {\n if (\n Object.prototype.hasOwnProperty.call(\n CatalogFilterExpressionOperator,\n key,\n )\n ) {\n if (\n CatalogFilterExpressionOperator[\n key as keyof typeof CatalogFilterExpressionOperator\n ] === value\n ) {\n return true;\n }\n }\n }\n return false;\n}\n\nexport function CatalogFilterExpressionOperatorFromJSON(\n json: any,\n): CatalogFilterExpressionOperator {\n return CatalogFilterExpressionOperatorFromJSONTyped(json, false);\n}\n\nexport function CatalogFilterExpressionOperatorFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): CatalogFilterExpressionOperator {\n return json as CatalogFilterExpressionOperator;\n}\n\nexport function CatalogFilterExpressionOperatorToJSON(\n value?: CatalogFilterExpressionOperator | null,\n): any {\n return value as any;\n}\n\nexport function CatalogFilterExpressionOperatorToJSONTyped(\n value: any,\n ignoreDiscriminator: boolean,\n): CatalogFilterExpressionOperator {\n return value as CatalogFilterExpressionOperator;\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {CatalogFilterExpressionLiteral} from './CatalogFilterExpressionLiteral';\nimport {\n CatalogFilterExpressionLiteralFromJSON,\n CatalogFilterExpressionLiteralFromJSONTyped,\n CatalogFilterExpressionLiteralToJSON,\n CatalogFilterExpressionLiteralToJSONTyped,\n} from './CatalogFilterExpressionLiteral';\nimport type {CatalogFilterExpressionOperator} from './CatalogFilterExpressionOperator';\nimport {\n CatalogFilterExpressionOperatorFromJSON,\n CatalogFilterExpressionOperatorFromJSONTyped,\n CatalogFilterExpressionOperatorToJSON,\n CatalogFilterExpressionOperatorToJSONTyped,\n} from './CatalogFilterExpressionOperator';\n\n/**\n * Generic expression for filtering the data offers in the catalog\n * @export\n * @interface CatalogFilterExpression\n */\nexport interface CatalogFilterExpression {\n /**\n * Asset property name\n * @type {string}\n * @memberof CatalogFilterExpression\n */\n operandLeft: string;\n /**\n * Operator\n * @type {CatalogFilterExpressionOperator}\n * @memberof CatalogFilterExpression\n * @deprecated\n */\n operator: CatalogFilterExpressionOperator;\n /**\n * Right Operand\n * @type {CatalogFilterExpressionLiteral}\n * @memberof CatalogFilterExpression\n * @deprecated\n */\n operandRight: CatalogFilterExpressionLiteral;\n}\n\n/**\n * Check if a given object implements the CatalogFilterExpression interface.\n */\nexport function instanceOfCatalogFilterExpression(\n value: any,\n): value is CatalogFilterExpression {\n if (!('operandLeft' in value) || value['operandLeft'] === undefined)\n return false;\n if (!('operator' in value) || value['operator'] === undefined) return false;\n if (!('operandRight' in value) || value['operandRight'] === undefined)\n return false;\n return true;\n}\n\nexport function CatalogFilterExpressionFromJSON(\n json: any,\n): CatalogFilterExpression {\n return CatalogFilterExpressionFromJSONTyped(json, false);\n}\n\nexport function CatalogFilterExpressionFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): CatalogFilterExpression {\n if (json == null) {\n return json;\n }\n return {\n operandLeft: json['operandLeft'],\n operator: CatalogFilterExpressionOperatorFromJSON(json['operator']),\n operandRight: CatalogFilterExpressionLiteralFromJSON(\n json['operandRight'],\n ),\n };\n}\n\nexport function CatalogFilterExpressionToJSON(\n json: any,\n): CatalogFilterExpression {\n return CatalogFilterExpressionToJSONTyped(json, false);\n}\n\nexport function CatalogFilterExpressionToJSONTyped(\n value?: CatalogFilterExpression | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n operandLeft: value['operandLeft'],\n operator: CatalogFilterExpressionOperatorToJSON(value['operator']),\n operandRight: CatalogFilterExpressionLiteralToJSON(\n value['operandRight'],\n ),\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {CatalogFilterExpression} from './CatalogFilterExpression';\nimport {\n CatalogFilterExpressionFromJSON,\n CatalogFilterExpressionFromJSONTyped,\n CatalogFilterExpressionToJSON,\n CatalogFilterExpressionToJSONTyped,\n} from './CatalogFilterExpression';\n\n/**\n * Catalog query parameters\n * @export\n * @interface CatalogQuery\n */\nexport interface CatalogQuery {\n /**\n * Target EDC DSP endpoint URL. Can contain a queryParam 'participantId', which is provided by default in the Connector Endpoint in the EDC UI.\n * @type {string}\n * @memberof CatalogQuery\n */\n connectorEndpoint: string;\n /**\n * Target EDC Participant ID. It is required if the connector endpoint does not contain the queryParam 'participantId'.\n * @type {string}\n * @memberof CatalogQuery\n */\n participantId?: string;\n /**\n * Limit the number of results\n * @type {number}\n * @memberof CatalogQuery\n */\n limit?: number;\n /**\n * Offset for returned results, e.g. start at result 2\n * @type {number}\n * @memberof CatalogQuery\n */\n offset?: number;\n /**\n * Filter expressions for catalog filtering\n * @type {Array<CatalogFilterExpression>}\n * @memberof CatalogQuery\n */\n filterExpressions?: Array<CatalogFilterExpression>;\n}\n\n/**\n * Check if a given object implements the CatalogQuery interface.\n */\nexport function instanceOfCatalogQuery(value: any): value is CatalogQuery {\n if (\n !('connectorEndpoint' in value) ||\n value['connectorEndpoint'] === undefined\n )\n return false;\n return true;\n}\n\nexport function CatalogQueryFromJSON(json: any): CatalogQuery {\n return CatalogQueryFromJSONTyped(json, false);\n}\n\nexport function CatalogQueryFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): CatalogQuery {\n if (json == null) {\n return json;\n }\n return {\n connectorEndpoint: json['connectorEndpoint'],\n participantId:\n json['participantId'] == null ? undefined : json['participantId'],\n limit: json['limit'] == null ? undefined : json['limit'],\n offset: json['offset'] == null ? undefined : json['offset'],\n filterExpressions:\n json['filterExpressions'] == null\n ? undefined\n : (json['filterExpressions'] as Array<any>).map(\n CatalogFilterExpressionFromJSON,\n ),\n };\n}\n\nexport function CatalogQueryToJSON(json: any): CatalogQuery {\n return CatalogQueryToJSONTyped(json, false);\n}\n\nexport function CatalogQueryToJSONTyped(\n value?: CatalogQuery | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n connectorEndpoint: value['connectorEndpoint'],\n participantId: value['participantId'],\n limit: value['limit'],\n offset: value['offset'],\n filterExpressions:\n value['filterExpressions'] == null\n ? undefined\n : (value['filterExpressions'] as Array<any>).map(\n CatalogFilterExpressionToJSON,\n ),\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n/* eslint-disable */\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n/**\n * Sort Direction\n * @export\n */\nexport const CatalogSortByDirection = {\n Asc: 'ASC',\n Desc: 'DESC',\n} as const;\nexport type CatalogSortByDirection =\n (typeof CatalogSortByDirection)[keyof typeof CatalogSortByDirection];\n\nexport function instanceOfCatalogSortByDirection(value: any): boolean {\n for (const key in CatalogSortByDirection) {\n if (Object.prototype.hasOwnProperty.call(CatalogSortByDirection, key)) {\n if (\n CatalogSortByDirection[\n key as keyof typeof CatalogSortByDirection\n ] === value\n ) {\n return true;\n }\n }\n }\n return false;\n}\n\nexport function CatalogSortByDirectionFromJSON(\n json: any,\n): CatalogSortByDirection {\n return CatalogSortByDirectionFromJSONTyped(json, false);\n}\n\nexport function CatalogSortByDirectionFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): CatalogSortByDirection {\n return json as CatalogSortByDirection;\n}\n\nexport function CatalogSortByDirectionToJSON(\n value?: CatalogSortByDirection | null,\n): any {\n return value as any;\n}\n\nexport function CatalogSortByDirectionToJSONTyped(\n value: any,\n ignoreDiscriminator: boolean,\n): CatalogSortByDirection {\n return value as CatalogSortByDirection;\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {CatalogSortByDirection} from './CatalogSortByDirection';\nimport {\n CatalogSortByDirectionFromJSON,\n CatalogSortByDirectionFromJSONTyped,\n CatalogSortByDirectionToJSON,\n CatalogSortByDirectionToJSONTyped,\n} from './CatalogSortByDirection';\n\n/**\n * One field to sort by\n * @export\n * @interface CatalogSortBy\n */\nexport interface CatalogSortBy {\n /**\n * Asset property path\n * @type {Array<string>}\n * @memberof CatalogSortBy\n */\n assetPropertyPath: Array<string>;\n /**\n * Direction to sort by\n * @type {CatalogSortByDirection}\n * @memberof CatalogSortBy\n */\n direction?: CatalogSortByDirection;\n}\n\n/**\n * Check if a given object implements the CatalogSortBy interface.\n */\nexport function instanceOfCatalogSortBy(value: any): value is CatalogSortBy {\n if (\n !('assetPropertyPath' in value) ||\n value['assetPropertyPath'] === undefined\n )\n return false;\n return true;\n}\n\nexport function CatalogSortByFromJSON(json: any): CatalogSortBy {\n return CatalogSortByFromJSONTyped(json, false);\n}\n\nexport function CatalogSortByFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): CatalogSortBy {\n if (json == null) {\n return json;\n }\n return {\n assetPropertyPath: json['assetPropertyPath'],\n direction:\n json['direction'] == null\n ? undefined\n : CatalogSortByDirectionFromJSON(json['direction']),\n };\n}\n\nexport function CatalogSortByToJSON(json: any): CatalogSortBy {\n return CatalogSortByToJSONTyped(json, false);\n}\n\nexport function CatalogSortByToJSONTyped(\n value?: CatalogSortBy | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n assetPropertyPath: value['assetPropertyPath'],\n direction: CatalogSortByDirectionToJSON(value['direction']),\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {AssetFilterConstraint} from './AssetFilterConstraint';\nimport {\n AssetFilterConstraintFromJSON,\n AssetFilterConstraintFromJSONTyped,\n AssetFilterConstraintToJSON,\n AssetFilterConstraintToJSONTyped,\n} from './AssetFilterConstraint';\nimport type {CatalogSortBy} from './CatalogSortBy';\nimport {\n CatalogSortByFromJSON,\n CatalogSortByFromJSONTyped,\n CatalogSortByToJSON,\n CatalogSortByToJSONTyped,\n} from './CatalogSortBy';\n\n/**\n * Catalog query parameters\n * @export\n * @interface CatalogQueryV2\n */\nexport interface CatalogQueryV2 {\n /**\n * Target EDC DSP endpoint URL\n * @type {string}\n * @memberof CatalogQueryV2\n */\n connectorEndpoint: string;\n /**\n * Target EDC Participant ID\n * @type {string}\n * @memberof CatalogQueryV2\n */\n participantId: string;\n /**\n * Conjunction of filter expressions for data offer filtering\n * @type {Array<AssetFilterConstraint>}\n * @memberof CatalogQueryV2\n */\n filter?: Array<AssetFilterConstraint>;\n /**\n * Limit the number of results\n * @type {number}\n * @memberof CatalogQueryV2\n */\n limit?: number;\n /**\n * Offset for returned results, e.g. start at result 2\n * @type {number}\n * @memberof CatalogQueryV2\n */\n offset?: number;\n /**\n * Field to sort by\n * @type {CatalogSortBy}\n * @memberof CatalogQueryV2\n * @deprecated\n */\n sortBy?: CatalogSortBy;\n}\n\n/**\n * Check if a given object implements the CatalogQueryV2 interface.\n */\nexport function instanceOfCatalogQueryV2(value: any): value is CatalogQueryV2 {\n if (\n !('connectorEndpoint' in value) ||\n value['connectorEndpoint'] === undefined\n )\n return false;\n if (!('participantId' in value) || value['participantId'] === undefined)\n return false;\n return true;\n}\n\nexport function CatalogQueryV2FromJSON(json: any): CatalogQueryV2 {\n return CatalogQueryV2FromJSONTyped(json, false);\n}\n\nexport function CatalogQueryV2FromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): CatalogQueryV2 {\n if (json == null) {\n return json;\n }\n return {\n connectorEndpoint: json['connectorEndpoint'],\n participantId: json['participantId'],\n filter:\n json['filter'] == null\n ? undefined\n : (json['filter'] as Array<any>).map(\n AssetFilterConstraintFromJSON,\n ),\n limit: json['limit'] == null ? undefined : json['limit'],\n offset: json['offset'] == null ? undefined : json['offset'],\n sortBy:\n json['sortBy'] == null\n ? undefined\n : CatalogSortByFromJSON(json['sortBy']),\n };\n}\n\nexport function CatalogQueryV2ToJSON(json: any): CatalogQueryV2 {\n return CatalogQueryV2ToJSONTyped(json, false);\n}\n\nexport function CatalogQueryV2ToJSONTyped(\n value?: CatalogQueryV2 | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n connectorEndpoint: value['connectorEndpoint'],\n participantId: value['participantId'],\n filter:\n value['filter'] == null\n ? undefined\n : (value['filter'] as Array<any>).map(\n AssetFilterConstraintToJSON,\n ),\n limit: value['limit'],\n offset: value['offset'],\n sortBy: CatalogSortByToJSON(value['sortBy']),\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\n\n/**\n * Available and used resources of a connector.\n * @export\n * @interface ConnectorLimits\n */\nexport interface ConnectorLimits {\n /**\n * Current amount of active consuming contract agreements.\n * @type {number}\n * @memberof ConnectorLimits\n */\n numActiveConsumingContractAgreements: number;\n /**\n * Maximum amount of active consuming contract agreements. A value of 'null' or a negative value means that there are no limit.\n * @type {number}\n * @memberof ConnectorLimits\n */\n maxActiveConsumingContractAgreements?: number;\n}\n\n/**\n * Check if a given object implements the ConnectorLimits interface.\n */\nexport function instanceOfConnectorLimits(\n value: any,\n): value is ConnectorLimits {\n if (\n !('numActiveConsumingContractAgreements' in value) ||\n value['numActiveConsumingContractAgreements'] === undefined\n )\n return false;\n return true;\n}\n\nexport function ConnectorLimitsFromJSON(json: any): ConnectorLimits {\n return ConnectorLimitsFromJSONTyped(json, false);\n}\n\nexport function ConnectorLimitsFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): ConnectorLimits {\n if (json == null) {\n return json;\n }\n return {\n numActiveConsumingContractAgreements:\n json['numActiveConsumingContractAgreements'],\n maxActiveConsumingContractAgreements:\n json['maxActiveConsumingContractAgreements'] == null\n ? undefined\n : json['maxActiveConsumingContractAgreements'],\n };\n}\n\nexport function ConnectorLimitsToJSON(json: any): ConnectorLimits {\n return ConnectorLimitsToJSONTyped(json, false);\n}\n\nexport function ConnectorLimitsToJSONTyped(\n value?: ConnectorLimits | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n numActiveConsumingContractAgreements:\n value['numActiveConsumingContractAgreements'],\n maxActiveConsumingContractAgreements:\n value['maxActiveConsumingContractAgreements'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n/* eslint-disable */\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n/**\n * Whether the contract agreement is incoming or outgoing\n * @export\n */\nexport const ContractAgreementDirection = {\n Consuming: 'CONSUMING',\n Providing: 'PROVIDING',\n} as const;\nexport type ContractAgreementDirection =\n (typeof ContractAgreementDirection)[keyof typeof ContractAgreementDirection];\n\nexport function instanceOfContractAgreementDirection(value: any): boolean {\n for (const key in ContractAgreementDirection) {\n if (\n Object.prototype.hasOwnProperty.call(\n ContractAgreementDirection,\n key,\n )\n ) {\n if (\n ContractAgreementDirection[\n key as keyof typeof ContractAgreementDirection\n ] === value\n ) {\n return true;\n }\n }\n }\n return false;\n}\n\nexport function ContractAgreementDirectionFromJSON(\n json: any,\n): ContractAgreementDirection {\n return ContractAgreementDirectionFromJSONTyped(json, false);\n}\n\nexport function ContractAgreementDirectionFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): ContractAgreementDirection {\n return json as ContractAgreementDirection;\n}\n\nexport function ContractAgreementDirectionToJSON(\n value?: ContractAgreementDirection | null,\n): any {\n return value as any;\n}\n\nexport function ContractAgreementDirectionToJSONTyped(\n value: any,\n ignoreDiscriminator: boolean,\n): ContractAgreementDirection {\n return value as ContractAgreementDirection;\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n/* eslint-disable */\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n/**\n * Whether the contract termination was initiated by this EDC or a counterparty EDC.\n * @export\n */\nexport const ContractTerminatedBy = {\n Self: 'SELF',\n Counterparty: 'COUNTERPARTY',\n} as const;\nexport type ContractTerminatedBy =\n (typeof ContractTerminatedBy)[keyof typeof ContractTerminatedBy];\n\nexport function instanceOfContractTerminatedBy(value: any): boolean {\n for (const key in ContractTerminatedBy) {\n if (Object.prototype.hasOwnProperty.call(ContractTerminatedBy, key)) {\n if (\n ContractTerminatedBy[\n key as keyof typeof ContractTerminatedBy\n ] === value\n ) {\n return true;\n }\n }\n }\n return false;\n}\n\nexport function ContractTerminatedByFromJSON(json: any): ContractTerminatedBy {\n return ContractTerminatedByFromJSONTyped(json, false);\n}\n\nexport function ContractTerminatedByFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): ContractTerminatedBy {\n return json as ContractTerminatedBy;\n}\n\nexport function ContractTerminatedByToJSON(\n value?: ContractTerminatedBy | null,\n): any {\n return value as any;\n}\n\nexport function ContractTerminatedByToJSONTyped(\n value: any,\n ignoreDiscriminator: boolean,\n): ContractTerminatedBy {\n return value as ContractTerminatedBy;\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {ContractTerminatedBy} from './ContractTerminatedBy';\nimport {\n ContractTerminatedByFromJSON,\n ContractTerminatedByFromJSONTyped,\n ContractTerminatedByToJSON,\n ContractTerminatedByToJSONTyped,\n} from './ContractTerminatedBy';\n\n/**\n * Contract's agreement metadata\n * @export\n * @interface ContractAgreementTerminationInfo\n */\nexport interface ContractAgreementTerminationInfo {\n /**\n * Termination's date and time\n * @type {Date}\n * @memberof ContractAgreementTerminationInfo\n */\n terminatedAt: Date;\n /**\n * The termination's nature e.g. User Termination\n * @type {string}\n * @memberof ContractAgreementTerminationInfo\n */\n reason: string;\n /**\n * Detailed message from the terminating party about why the contract was terminated.\n * @type {string}\n * @memberof ContractAgreementTerminationInfo\n */\n detail: string;\n /**\n * Indicates whether the termination comes from this EDC or the counterparty EDC.\n * @type {ContractTerminatedBy}\n * @memberof ContractAgreementTerminationInfo\n */\n terminatedBy: ContractTerminatedBy;\n}\n\n/**\n * Check if a given object implements the ContractAgreementTerminationInfo interface.\n */\nexport function instanceOfContractAgreementTerminationInfo(\n value: any,\n): value is ContractAgreementTerminationInfo {\n if (!('terminatedAt' in value) || value['terminatedAt'] === undefined)\n return false;\n if (!('reason' in value) || value['reason'] === undefined) return false;\n if (!('detail' in value) || value['detail'] === undefined) return false;\n if (!('terminatedBy' in value) || value['terminatedBy'] === undefined)\n return false;\n return true;\n}\n\nexport function ContractAgreementTerminationInfoFromJSON(\n json: any,\n): ContractAgreementTerminationInfo {\n return ContractAgreementTerminationInfoFromJSONTyped(json, false);\n}\n\nexport function ContractAgreementTerminationInfoFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): ContractAgreementTerminationInfo {\n if (json == null) {\n return json;\n }\n return {\n terminatedAt: new Date(json['terminatedAt']),\n reason: json['reason'],\n detail: json['detail'],\n terminatedBy: ContractTerminatedByFromJSON(json['terminatedBy']),\n };\n}\n\nexport function ContractAgreementTerminationInfoToJSON(\n json: any,\n): ContractAgreementTerminationInfo {\n return ContractAgreementTerminationInfoToJSONTyped(json, false);\n}\n\nexport function ContractAgreementTerminationInfoToJSONTyped(\n value?: ContractAgreementTerminationInfo | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n terminatedAt: value['terminatedAt'].toISOString(),\n reason: value['reason'],\n detail: value['detail'],\n terminatedBy: ContractTerminatedByToJSON(value['terminatedBy']),\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n/* eslint-disable */\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n/**\n * Simplified Transfer Process State to be used in UI\n * @export\n */\nexport const TransferProcessSimplifiedState = {\n Running: 'RUNNING',\n Ok: 'OK',\n Error: 'ERROR',\n} as const;\nexport type TransferProcessSimplifiedState =\n (typeof TransferProcessSimplifiedState)[keyof typeof TransferProcessSimplifiedState];\n\nexport function instanceOfTransferProcessSimplifiedState(value: any): boolean {\n for (const key in TransferProcessSimplifiedState) {\n if (\n Object.prototype.hasOwnProperty.call(\n TransferProcessSimplifiedState,\n key,\n )\n ) {\n if (\n TransferProcessSimplifiedState[\n key as keyof typeof TransferProcessSimplifiedState\n ] === value\n ) {\n return true;\n }\n }\n }\n return false;\n}\n\nexport function TransferProcessSimplifiedStateFromJSON(\n json: any,\n): TransferProcessSimplifiedState {\n return TransferProcessSimplifiedStateFromJSONTyped(json, false);\n}\n\nexport function TransferProcessSimplifiedStateFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): TransferProcessSimplifiedState {\n return json as TransferProcessSimplifiedState;\n}\n\nexport function TransferProcessSimplifiedStateToJSON(\n value?: TransferProcessSimplifiedState | null,\n): any {\n return value as any;\n}\n\nexport function TransferProcessSimplifiedStateToJSONTyped(\n value: any,\n ignoreDiscriminator: boolean,\n): TransferProcessSimplifiedState {\n return value as TransferProcessSimplifiedState;\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {TransferProcessSimplifiedState} from './TransferProcessSimplifiedState';\nimport {\n TransferProcessSimplifiedStateFromJSON,\n TransferProcessSimplifiedStateFromJSONTyped,\n TransferProcessSimplifiedStateToJSON,\n TransferProcessSimplifiedStateToJSONTyped,\n} from './TransferProcessSimplifiedState';\n\n/**\n * Transfer Process State interpreted\n * @export\n * @interface TransferProcessState\n */\nexport interface TransferProcessState {\n /**\n * State name or 'CUSTOM'. State names only exist for original EDC Transfer Process States.\n * @type {string}\n * @memberof TransferProcessState\n */\n name: string;\n /**\n * State code\n * @type {number}\n * @memberof TransferProcessState\n */\n code: number;\n /**\n * Whether we are running, in an error state or done.\n * @type {TransferProcessSimplifiedState}\n * @memberof TransferProcessState\n */\n simplifiedState: TransferProcessSimplifiedState;\n}\n\n/**\n * Check if a given object implements the TransferProcessState interface.\n */\nexport function instanceOfTransferProcessState(\n value: any,\n): value is TransferProcessState {\n if (!('name' in value) || value['name'] === undefined) return false;\n if (!('code' in value) || value['code'] === undefined) return false;\n if (!('simplifiedState' in value) || value['simplifiedState'] === undefined)\n return false;\n return true;\n}\n\nexport function TransferProcessStateFromJSON(json: any): TransferProcessState {\n return TransferProcessStateFromJSONTyped(json, false);\n}\n\nexport function TransferProcessStateFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): TransferProcessState {\n if (json == null) {\n return json;\n }\n return {\n name: json['name'],\n code: json['code'],\n simplifiedState: TransferProcessSimplifiedStateFromJSON(\n json['simplifiedState'],\n ),\n };\n}\n\nexport function TransferProcessStateToJSON(json: any): TransferProcessState {\n return TransferProcessStateToJSONTyped(json, false);\n}\n\nexport function TransferProcessStateToJSONTyped(\n value?: TransferProcessState | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n name: value['name'],\n code: value['code'],\n simplifiedState: TransferProcessSimplifiedStateToJSON(\n value['simplifiedState'],\n ),\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {TransferProcessState} from './TransferProcessState';\nimport {\n TransferProcessStateFromJSON,\n TransferProcessStateFromJSONTyped,\n TransferProcessStateToJSON,\n TransferProcessStateToJSONTyped,\n} from './TransferProcessState';\n\n/**\n * A Contract Agreement's Transfer Process for the Contract Agreement Details Page\n * @export\n * @interface ContractAgreementTransferProcess\n */\nexport interface ContractAgreementTransferProcess {\n /**\n * Transfer Process ID\n * @type {string}\n * @memberof ContractAgreementTransferProcess\n */\n transferProcessId: string;\n /**\n * Last Change Date\n * @type {Date}\n * @memberof ContractAgreementTransferProcess\n */\n lastUpdatedDate: Date;\n /**\n * Current State\n * @type {TransferProcessState}\n * @memberof ContractAgreementTransferProcess\n */\n state: TransferProcessState;\n /**\n * Error Message\n * @type {string}\n * @memberof ContractAgreementTransferProcess\n */\n errorMessage?: string;\n}\n\n/**\n * Check if a given object implements the ContractAgreementTransferProcess interface.\n */\nexport function instanceOfContractAgreementTransferProcess(\n value: any,\n): value is ContractAgreementTransferProcess {\n if (\n !('transferProcessId' in value) ||\n value['transferProcessId'] === undefined\n )\n return false;\n if (!('lastUpdatedDate' in value) || value['lastUpdatedDate'] === undefined)\n return false;\n if (!('state' in value) || value['state'] === undefined) return false;\n return true;\n}\n\nexport function ContractAgreementTransferProcessFromJSON(\n json: any,\n): ContractAgreementTransferProcess {\n return ContractAgreementTransferProcessFromJSONTyped(json, false);\n}\n\nexport function ContractAgreementTransferProcessFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): ContractAgreementTransferProcess {\n if (json == null) {\n return json;\n }\n return {\n transferProcessId: json['transferProcessId'],\n lastUpdatedDate: new Date(json['lastUpdatedDate']),\n state: TransferProcessStateFromJSON(json['state']),\n errorMessage:\n json['errorMessage'] == null ? undefined : json['errorMessage'],\n };\n}\n\nexport function ContractAgreementTransferProcessToJSON(\n json: any,\n): ContractAgreementTransferProcess {\n return ContractAgreementTransferProcessToJSONTyped(json, false);\n}\n\nexport function ContractAgreementTransferProcessToJSONTyped(\n value?: ContractAgreementTransferProcess | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n transferProcessId: value['transferProcessId'],\n lastUpdatedDate: value['lastUpdatedDate'].toISOString(),\n state: TransferProcessStateToJSON(value['state']),\n errorMessage: value['errorMessage'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n/* eslint-disable */\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n/**\n * Value type of an asset selector criterion right expression value\n * @export\n */\nexport const UiCriterionLiteralType = {\n Value: 'VALUE',\n ValueList: 'VALUE_LIST',\n} as const;\nexport type UiCriterionLiteralType =\n (typeof UiCriterionLiteralType)[keyof typeof UiCriterionLiteralType];\n\nexport function instanceOfUiCriterionLiteralType(value: any): boolean {\n for (const key in UiCriterionLiteralType) {\n if (Object.prototype.hasOwnProperty.call(UiCriterionLiteralType, key)) {\n if (\n UiCriterionLiteralType[\n key as keyof typeof UiCriterionLiteralType\n ] === value\n ) {\n return true;\n }\n }\n }\n return false;\n}\n\nexport function UiCriterionLiteralTypeFromJSON(\n json: any,\n): UiCriterionLiteralType {\n return UiCriterionLiteralTypeFromJSONTyped(json, false);\n}\n\nexport function UiCriterionLiteralTypeFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): UiCriterionLiteralType {\n return json as UiCriterionLiteralType;\n}\n\nexport function UiCriterionLiteralTypeToJSON(\n value?: UiCriterionLiteralType | null,\n): any {\n return value as any;\n}\n\nexport function UiCriterionLiteralTypeToJSONTyped(\n value: any,\n ignoreDiscriminator: boolean,\n): UiCriterionLiteralType {\n return value as UiCriterionLiteralType;\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {UiCriterionLiteralType} from './UiCriterionLiteralType';\nimport {\n UiCriterionLiteralTypeFromJSON,\n UiCriterionLiteralTypeFromJSONTyped,\n UiCriterionLiteralTypeToJSON,\n UiCriterionLiteralTypeToJSONTyped,\n} from './UiCriterionLiteralType';\n\n/**\n * Criterion Literal\n * @export\n * @interface UiCriterionLiteral\n */\nexport interface UiCriterionLiteral {\n /**\n *\n * @type {UiCriterionLiteralType}\n * @memberof UiCriterionLiteral\n * @deprecated\n */\n type?: UiCriterionLiteralType;\n /**\n * Only for type VALUE. The single value representation.\n * @type {string}\n * @memberof UiCriterionLiteral\n */\n value?: string;\n /**\n * Only for type VALUE_LIST. List of values, e.g. for the IN-Operator.\n * @type {Array<string>}\n * @memberof UiCriterionLiteral\n */\n valueList?: Array<string>;\n}\n\n/**\n * Check if a given object implements the UiCriterionLiteral interface.\n */\nexport function instanceOfUiCriterionLiteral(\n value: any,\n): value is UiCriterionLiteral {\n return true;\n}\n\nexport function UiCriterionLiteralFromJSON(json: any): UiCriterionLiteral {\n return UiCriterionLiteralFromJSONTyped(json, false);\n}\n\nexport function UiCriterionLiteralFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): UiCriterionLiteral {\n if (json == null) {\n return json;\n }\n return {\n type:\n json['type'] == null\n ? undefined\n : UiCriterionLiteralTypeFromJSON(json['type']),\n value: json['value'] == null ? undefined : json['value'],\n valueList: json['valueList'] == null ? undefined : json['valueList'],\n };\n}\n\nexport function UiCriterionLiteralToJSON(json: any): UiCriterionLiteral {\n return UiCriterionLiteralToJSONTyped(json, false);\n}\n\nexport function UiCriterionLiteralToJSONTyped(\n value?: UiCriterionLiteral | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n type: UiCriterionLiteralTypeToJSON(value['type']),\n value: value['value'],\n valueList: value['valueList'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n/* eslint-disable */\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n/**\n * Operator for constraints\n * @export\n */\nexport const UiCriterionOperator = {\n Eq: 'EQ',\n In: 'IN',\n Like: 'LIKE',\n} as const;\nexport type UiCriterionOperator =\n (typeof UiCriterionOperator)[keyof typeof UiCriterionOperator];\n\nexport function instanceOfUiCriterionOperator(value: any): boolean {\n for (const key in UiCriterionOperator) {\n if (Object.prototype.hasOwnProperty.call(UiCriterionOperator, key)) {\n if (\n UiCriterionOperator[key as keyof typeof UiCriterionOperator] ===\n value\n ) {\n return true;\n }\n }\n }\n return false;\n}\n\nexport function UiCriterionOperatorFromJSON(json: any): UiCriterionOperator {\n return UiCriterionOperatorFromJSONTyped(json, false);\n}\n\nexport function UiCriterionOperatorFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): UiCriterionOperator {\n return json as UiCriterionOperator;\n}\n\nexport function UiCriterionOperatorToJSON(\n value?: UiCriterionOperator | null,\n): any {\n return value as any;\n}\n\nexport function UiCriterionOperatorToJSONTyped(\n value: any,\n ignoreDiscriminator: boolean,\n): UiCriterionOperator {\n return value as UiCriterionOperator;\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {UiCriterionLiteral} from './UiCriterionLiteral';\nimport {\n UiCriterionLiteralFromJSON,\n UiCriterionLiteralFromJSONTyped,\n UiCriterionLiteralToJSON,\n UiCriterionLiteralToJSONTyped,\n} from './UiCriterionLiteral';\nimport type {UiCriterionOperator} from './UiCriterionOperator';\nimport {\n UiCriterionOperatorFromJSON,\n UiCriterionOperatorFromJSONTyped,\n UiCriterionOperatorToJSON,\n UiCriterionOperatorToJSONTyped,\n} from './UiCriterionOperator';\n\n/**\n * Contract Definition Criterion as supported by the UI. Will be replaced by [AssetFilterConstraint] over time for better typing of asset property paths.\n * @export\n * @interface UiCriterion\n */\nexport interface UiCriterion {\n /**\n * Left Operand\n * @type {string}\n * @memberof UiCriterion\n */\n operandLeft: string;\n /**\n * Operator\n * @type {UiCriterionOperator}\n * @memberof UiCriterion\n * @deprecated\n */\n operator: UiCriterionOperator;\n /**\n * Right Operand\n * @type {UiCriterionLiteral}\n * @memberof UiCriterion\n * @deprecated\n */\n operandRight: UiCriterionLiteral;\n}\n\n/**\n * Check if a given object implements the UiCriterion interface.\n */\nexport function instanceOfUiCriterion(value: any): value is UiCriterion {\n if (!('operandLeft' in value) || value['operandLeft'] === undefined)\n return false;\n if (!('operator' in value) || value['operator'] === undefined) return false;\n if (!('operandRight' in value) || value['operandRight'] === undefined)\n return false;\n return true;\n}\n\nexport function UiCriterionFromJSON(json: any): UiCriterion {\n return UiCriterionFromJSONTyped(json, false);\n}\n\nexport function UiCriterionFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): UiCriterion {\n if (json == null) {\n return json;\n }\n return {\n operandLeft: json['operandLeft'],\n operator: UiCriterionOperatorFromJSON(json['operator']),\n operandRight: UiCriterionLiteralFromJSON(json['operandRight']),\n };\n}\n\nexport function UiCriterionToJSON(json: any): UiCriterion {\n return UiCriterionToJSONTyped(json, false);\n}\n\nexport function UiCriterionToJSONTyped(\n value?: UiCriterion | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n operandLeft: value['operandLeft'],\n operator: UiCriterionOperatorToJSON(value['operator']),\n operandRight: UiCriterionLiteralToJSON(value['operandRight']),\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {UiCriterion} from './UiCriterion';\nimport {\n UiCriterionFromJSON,\n UiCriterionFromJSONTyped,\n UiCriterionToJSON,\n UiCriterionToJSONTyped,\n} from './UiCriterion';\n\n/**\n * Contract Definition List Entry for Contract Definition Page\n * @export\n * @interface ContractDefinitionEntry\n */\nexport interface ContractDefinitionEntry {\n /**\n * Contract Definition ID\n * @type {string}\n * @memberof ContractDefinitionEntry\n */\n contractDefinitionId: string;\n /**\n * Access Policy ID\n * @type {string}\n * @memberof ContractDefinitionEntry\n */\n accessPolicyId: string;\n /**\n * Contract Policy ID\n * @type {string}\n * @memberof ContractDefinitionEntry\n */\n contractPolicyId: string;\n /**\n * Criteria for the contract\n * @type {Array<UiCriterion>}\n * @memberof ContractDefinitionEntry\n */\n assetSelector: Array<UiCriterion>;\n}\n\n/**\n * Check if a given object implements the ContractDefinitionEntry interface.\n */\nexport function instanceOfContractDefinitionEntry(\n value: any,\n): value is ContractDefinitionEntry {\n if (\n !('contractDefinitionId' in value) ||\n value['contractDefinitionId'] === undefined\n )\n return false;\n if (!('accessPolicyId' in value) || value['accessPolicyId'] === undefined)\n return false;\n if (\n !('contractPolicyId' in value) ||\n value['contractPolicyId'] === undefined\n )\n return false;\n if (!('assetSelector' in value) || value['assetSelector'] === undefined)\n return false;\n return true;\n}\n\nexport function ContractDefinitionEntryFromJSON(\n json: any,\n): ContractDefinitionEntry {\n return ContractDefinitionEntryFromJSONTyped(json, false);\n}\n\nexport function ContractDefinitionEntryFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): ContractDefinitionEntry {\n if (json == null) {\n return json;\n }\n return {\n contractDefinitionId: json['contractDefinitionId'],\n accessPolicyId: json['accessPolicyId'],\n contractPolicyId: json['contractPolicyId'],\n assetSelector: (json['assetSelector'] as Array<any>).map(\n UiCriterionFromJSON,\n ),\n };\n}\n\nexport function ContractDefinitionEntryToJSON(\n json: any,\n): ContractDefinitionEntry {\n return ContractDefinitionEntryToJSONTyped(json, false);\n}\n\nexport function ContractDefinitionEntryToJSONTyped(\n value?: ContractDefinitionEntry | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n contractDefinitionId: value['contractDefinitionId'],\n accessPolicyId: value['accessPolicyId'],\n contractPolicyId: value['contractPolicyId'],\n assetSelector: (value['assetSelector'] as Array<any>).map(\n UiCriterionToJSON,\n ),\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {ContractDefinitionEntry} from './ContractDefinitionEntry';\nimport {\n ContractDefinitionEntryFromJSON,\n ContractDefinitionEntryFromJSONTyped,\n ContractDefinitionEntryToJSON,\n ContractDefinitionEntryToJSONTyped,\n} from './ContractDefinitionEntry';\n\n/**\n * Data as required by the UI's Contract Definition Page. Will be replaced with a Catalog Definition Page that shall support asset property paths properly\n * @export\n * @interface ContractDefinitionPage\n */\nexport interface ContractDefinitionPage {\n /**\n * Contract Definition Entries\n * @type {Array<ContractDefinitionEntry>}\n * @memberof ContractDefinitionPage\n */\n contractDefinitions: Array<ContractDefinitionEntry>;\n}\n\n/**\n * Check if a given object implements the ContractDefinitionPage interface.\n */\nexport function instanceOfContractDefinitionPage(\n value: any,\n): value is ContractDefinitionPage {\n if (\n !('contractDefinitions' in value) ||\n value['contractDefinitions'] === undefined\n )\n return false;\n return true;\n}\n\nexport function ContractDefinitionPageFromJSON(\n json: any,\n): ContractDefinitionPage {\n return ContractDefinitionPageFromJSONTyped(json, false);\n}\n\nexport function ContractDefinitionPageFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): ContractDefinitionPage {\n if (json == null) {\n return json;\n }\n return {\n contractDefinitions: (json['contractDefinitions'] as Array<any>).map(\n ContractDefinitionEntryFromJSON,\n ),\n };\n}\n\nexport function ContractDefinitionPageToJSON(\n json: any,\n): ContractDefinitionPage {\n return ContractDefinitionPageToJSONTyped(json, false);\n}\n\nexport function ContractDefinitionPageToJSONTyped(\n value?: ContractDefinitionPage | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n contractDefinitions: (value['contractDefinitions'] as Array<any>).map(\n ContractDefinitionEntryToJSON,\n ),\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {UiCriterion} from './UiCriterion';\nimport {\n UiCriterionFromJSON,\n UiCriterionFromJSONTyped,\n UiCriterionToJSON,\n UiCriterionToJSONTyped,\n} from './UiCriterion';\n\n/**\n * Data for creating a Contract Definition\n * @export\n * @interface ContractDefinitionRequest\n */\nexport interface ContractDefinitionRequest {\n /**\n * Contract Definition ID\n * @type {string}\n * @memberof ContractDefinitionRequest\n */\n contractDefinitionId: string;\n /**\n * Contract Policy ID\n * @type {string}\n * @memberof ContractDefinitionRequest\n */\n contractPolicyId: string;\n /**\n * Access Policy ID\n * @type {string}\n * @memberof ContractDefinitionRequest\n */\n accessPolicyId: string;\n /**\n * List of Criteria for the contract\n * @type {Array<UiCriterion>}\n * @memberof ContractDefinitionRequest\n */\n assetSelector: Array<UiCriterion>;\n}\n\n/**\n * Check if a given object implements the ContractDefinitionRequest interface.\n */\nexport function instanceOfContractDefinitionRequest(\n value: any,\n): value is ContractDefinitionRequest {\n if (\n !('contractDefinitionId' in value) ||\n value['contractDefinitionId'] === undefined\n )\n return false;\n if (\n !('contractPolicyId' in value) ||\n value['contractPolicyId'] === undefined\n )\n return false;\n if (!('accessPolicyId' in value) || value['accessPolicyId'] === undefined)\n return false;\n if (!('assetSelector' in value) || value['assetSelector'] === undefined)\n return false;\n return true;\n}\n\nexport function ContractDefinitionRequestFromJSON(\n json: any,\n): ContractDefinitionRequest {\n return ContractDefinitionRequestFromJSONTyped(json, false);\n}\n\nexport function ContractDefinitionRequestFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): ContractDefinitionRequest {\n if (json == null) {\n return json;\n }\n return {\n contractDefinitionId: json['contractDefinitionId'],\n contractPolicyId: json['contractPolicyId'],\n accessPolicyId: json['accessPolicyId'],\n assetSelector: (json['assetSelector'] as Array<any>).map(\n UiCriterionFromJSON,\n ),\n };\n}\n\nexport function ContractDefinitionRequestToJSON(\n json: any,\n): ContractDefinitionRequest {\n return ContractDefinitionRequestToJSONTyped(json, false);\n}\n\nexport function ContractDefinitionRequestToJSONTyped(\n value?: ContractDefinitionRequest | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n contractDefinitionId: value['contractDefinitionId'],\n contractPolicyId: value['contractPolicyId'],\n accessPolicyId: value['accessPolicyId'],\n assetSelector: (value['assetSelector'] as Array<any>).map(\n UiCriterionToJSON,\n ),\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n/* eslint-disable */\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n/**\n * The contract termination status\n * @export\n */\nexport const ContractTerminationStatus = {\n Ongoing: 'ONGOING',\n Terminated: 'TERMINATED',\n} as const;\nexport type ContractTerminationStatus =\n (typeof ContractTerminationStatus)[keyof typeof ContractTerminationStatus];\n\nexport function instanceOfContractTerminationStatus(value: any): boolean {\n for (const key in ContractTerminationStatus) {\n if (\n Object.prototype.hasOwnProperty.call(ContractTerminationStatus, key)\n ) {\n if (\n ContractTerminationStatus[\n key as keyof typeof ContractTerminationStatus\n ] === value\n ) {\n return true;\n }\n }\n }\n return false;\n}\n\nexport function ContractTerminationStatusFromJSON(\n json: any,\n): ContractTerminationStatus {\n return ContractTerminationStatusFromJSONTyped(json, false);\n}\n\nexport function ContractTerminationStatusFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): ContractTerminationStatus {\n return json as ContractTerminationStatus;\n}\n\nexport function ContractTerminationStatusToJSON(\n value?: ContractTerminationStatus | null,\n): any {\n return value as any;\n}\n\nexport function ContractTerminationStatusToJSONTyped(\n value: any,\n ignoreDiscriminator: boolean,\n): ContractTerminationStatus {\n return value as ContractTerminationStatus;\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\n\n/**\n * Type-safe extra fields for the sphin-x dataspace.\n * @export\n * @interface UiAssetExtForSphinx\n */\nexport interface UiAssetExtForSphinx {\n /**\n * Patient Count\n * @type {string}\n * @memberof UiAssetExtForSphinx\n */\n patientCount?: string;\n /**\n * Birth Year Min\n * @type {string}\n * @memberof UiAssetExtForSphinx\n */\n birthYearMin?: string;\n /**\n * Birth Year Max\n * @type {string}\n * @memberof UiAssetExtForSphinx\n */\n birthYearMax?: string;\n /**\n * Administrative Gender\n * @type {string}\n * @memberof UiAssetExtForSphinx\n */\n administrativeGender?: string;\n /**\n * Body Height Min\n * @type {string}\n * @memberof UiAssetExtForSphinx\n */\n bodyHeightMin?: string;\n /**\n * Body Height Max\n * @type {string}\n * @memberof UiAssetExtForSphinx\n */\n bodyHeightMax?: string;\n /**\n * Primary Diagnosis\n * @type {string}\n * @memberof UiAssetExtForSphinx\n */\n diagnosisPrimary?: string;\n /**\n * Secondary Diagnosis\n * @type {string}\n * @memberof UiAssetExtForSphinx\n */\n diagnosisSecondary?: string;\n /**\n * Encounter Start Year\n * @type {string}\n * @memberof UiAssetExtForSphinx\n */\n encounterStart?: string;\n /**\n * Encounter End Year\n * @type {string}\n * @memberof UiAssetExtForSphinx\n */\n encounterEnd?: string;\n /**\n * Medication Count\n * @type {string}\n * @memberof UiAssetExtForSphinx\n */\n medicationCount?: string;\n /**\n * Dosage Count\n * @type {string}\n * @memberof UiAssetExtForSphinx\n */\n dosageCount?: string;\n /**\n * Clinical Specialty\n * @type {string}\n * @memberof UiAssetExtForSphinx\n */\n clinicalSpecialty?: string;\n}\n\n/**\n * Check if a given object implements the UiAssetExtForSphinx interface.\n */\nexport function instanceOfUiAssetExtForSphinx(\n value: any,\n): value is UiAssetExtForSphinx {\n return true;\n}\n\nexport function UiAssetExtForSphinxFromJSON(json: any): UiAssetExtForSphinx {\n return UiAssetExtForSphinxFromJSONTyped(json, false);\n}\n\nexport function UiAssetExtForSphinxFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): UiAssetExtForSphinx {\n if (json == null) {\n return json;\n }\n return {\n patientCount:\n json['patientCount'] == null ? undefined : json['patientCount'],\n birthYearMin:\n json['birthYearMin'] == null ? undefined : json['birthYearMin'],\n birthYearMax:\n json['birthYearMax'] == null ? undefined : json['birthYearMax'],\n administrativeGender:\n json['administrativeGender'] == null\n ? undefined\n : json['administrativeGender'],\n bodyHeightMin:\n json['bodyHeightMin'] == null ? undefined : json['bodyHeightMin'],\n bodyHeightMax:\n json['bodyHeightMax'] == null ? undefined : json['bodyHeightMax'],\n diagnosisPrimary:\n json['diagnosisPrimary'] == null\n ? undefined\n : json['diagnosisPrimary'],\n diagnosisSecondary:\n json['diagnosisSecondary'] == null\n ? undefined\n : json['diagnosisSecondary'],\n encounterStart:\n json['encounterStart'] == null ? undefined : json['encounterStart'],\n encounterEnd:\n json['encounterEnd'] == null ? undefined : json['encounterEnd'],\n medicationCount:\n json['medicationCount'] == null\n ? undefined\n : json['medicationCount'],\n dosageCount:\n json['dosageCount'] == null ? undefined : json['dosageCount'],\n clinicalSpecialty:\n json['clinicalSpecialty'] == null\n ? undefined\n : json['clinicalSpecialty'],\n };\n}\n\nexport function UiAssetExtForSphinxToJSON(json: any): UiAssetExtForSphinx {\n return UiAssetExtForSphinxToJSONTyped(json, false);\n}\n\nexport function UiAssetExtForSphinxToJSONTyped(\n value?: UiAssetExtForSphinx | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n patientCount: value['patientCount'],\n birthYearMin: value['birthYearMin'],\n birthYearMax: value['birthYearMax'],\n administrativeGender: value['administrativeGender'],\n bodyHeightMin: value['bodyHeightMin'],\n bodyHeightMax: value['bodyHeightMax'],\n diagnosisPrimary: value['diagnosisPrimary'],\n diagnosisSecondary: value['diagnosisSecondary'],\n encounterStart: value['encounterStart'],\n encounterEnd: value['encounterEnd'],\n medicationCount: value['medicationCount'],\n dosageCount: value['dosageCount'],\n clinicalSpecialty: value['clinicalSpecialty'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {DataSourceAvailability} from './DataSourceAvailability';\nimport {\n DataSourceAvailabilityFromJSON,\n DataSourceAvailabilityFromJSONTyped,\n DataSourceAvailabilityToJSON,\n DataSourceAvailabilityToJSONTyped,\n} from './DataSourceAvailability';\nimport type {UiAssetExtForSphinx} from './UiAssetExtForSphinx';\nimport {\n UiAssetExtForSphinxFromJSON,\n UiAssetExtForSphinxFromJSONTyped,\n UiAssetExtForSphinxToJSON,\n UiAssetExtForSphinxToJSONTyped,\n} from './UiAssetExtForSphinx';\n\n/**\n * Type-safe data offer metadata as supported by the sovity product landscape. Contains extension points.\n * @export\n * @interface UiAsset\n */\nexport interface UiAsset {\n /**\n * 'Live' vs 'On Request'\n * @type {DataSourceAvailability}\n * @memberof UiAsset\n */\n dataSourceAvailability: DataSourceAvailability;\n /**\n * Asset Id\n * @type {string}\n * @memberof UiAsset\n */\n assetId: string;\n /**\n * Providing Connector's Connector Endpoint\n * @type {string}\n * @memberof UiAsset\n */\n connectorEndpoint: string;\n /**\n * Providing Connector's Participant ID\n * @type {string}\n * @memberof UiAsset\n */\n participantId: string;\n /**\n * Asset Title\n * @type {string}\n * @memberof UiAsset\n */\n title: string;\n /**\n * Asset Organization Name\n * @type {string}\n * @memberof UiAsset\n */\n creatorOrganizationName: string;\n /**\n * Contact E-Mail address. Only for dataSourceAvailability ON_REQUEST.\n * @type {string}\n * @memberof UiAsset\n */\n onRequestContactEmail?: string;\n /**\n * Contact Preferred E-Mail Subject. Only for dataSourceAvailability ON_REQUEST.\n * @type {string}\n * @memberof UiAsset\n */\n onRequestContactEmailSubject?: string;\n /**\n * Asset Language\n * @type {string}\n * @memberof UiAsset\n */\n language?: string;\n /**\n * Asset Description. Supports markdown.\n * @type {string}\n * @memberof UiAsset\n */\n description?: string;\n /**\n * Asset Description Short Text generated from description. Contains no markdown.\n * @type {string}\n * @memberof UiAsset\n */\n descriptionShortText?: string;\n /**\n * Flag that indicates whether this asset is created by this connector.\n * @type {boolean}\n * @memberof UiAsset\n */\n isOwnConnector: boolean;\n /**\n * Asset Homepage\n * @type {string}\n * @memberof UiAsset\n */\n publisherHomepage?: string;\n /**\n * License URL\n * @type {string}\n * @memberof UiAsset\n */\n licenseUrl?: string;\n /**\n * Version\n * @type {string}\n * @memberof UiAsset\n */\n version?: string;\n /**\n * Asset Keywords\n * @type {Array<string>}\n * @memberof UiAsset\n */\n keywords?: Array<string>;\n /**\n * Asset MediaType\n * @type {string}\n * @memberof UiAsset\n */\n mediaType?: string;\n /**\n * Homepage URL associated with the Asset\n * @type {string}\n * @memberof UiAsset\n */\n landingPageUrl?: string;\n /**\n * HTTP Datasource Hint: Proxy Method. Only for dataSourceAvailability LIVE with an underlying HTTP_DATA Data Source.\n * @type {boolean}\n * @memberof UiAsset\n */\n httpDatasourceHintsProxyMethod?: boolean;\n /**\n * HTTP Datasource Hint: Proxy Path. Only for dataSourceAvailability LIVE with an underlying HTTP_DATA Data Source.\n * @type {boolean}\n * @memberof UiAsset\n */\n httpDatasourceHintsProxyPath?: boolean;\n /**\n * HTTP Datasource Hint: Proxy Query Params. Only for dataSourceAvailability LIVE with an underlying HTTP_DATA Data Source.\n * @type {boolean}\n * @memberof UiAsset\n */\n httpDatasourceHintsProxyQueryParams?: boolean;\n /**\n * HTTP Datasource Hint: Proxy Body. Only for dataSourceAvailability LIVE with an underlying HTTP_DATA Data Source.\n * @type {boolean}\n * @memberof UiAsset\n */\n httpDatasourceHintsProxyBody?: boolean;\n /**\n * Data Model\n * @type {string}\n * @memberof UiAsset\n */\n dataModel?: string;\n /**\n * The sovereign is distinct from the publisher by being the legal owner of the data.\n * @type {string}\n * @memberof UiAsset\n */\n sovereignLegalName?: string;\n /**\n * Data sample URLs\n * @type {Array<string>}\n * @memberof UiAsset\n */\n dataSampleUrls?: Array<string>;\n /**\n * Reference file/schema URLs\n * @type {Array<string>}\n * @memberof UiAsset\n */\n referenceFileUrls?: Array<string>;\n /**\n * Additional information on reference files/schemas\n * @type {string}\n * @memberof UiAsset\n */\n referenceFilesDescription?: string;\n /**\n * Instructions for use that are not legally relevant e.g. information on how to cite the dataset in papers\n * @type {string}\n * @memberof UiAsset\n */\n conditionsForUse?: string;\n /**\n * Data update frequency\n * @type {string}\n * @memberof UiAsset\n */\n dataUpdateFrequency?: string;\n /**\n * Temporal coverage start date\n * @type {Date}\n * @memberof UiAsset\n */\n temporalCoverageFrom?: Date;\n /**\n * Temporal coverage end date (inclusive)\n * @type {Date}\n * @memberof UiAsset\n */\n temporalCoverageToInclusive?: Date;\n /**\n * sphin-x dataspace specific asset metadata fields\n * @type {UiAssetExtForSphinx}\n * @memberof UiAsset\n */\n sphinxFields?: UiAssetExtForSphinx;\n /**\n * Contains the entire asset in the JSON-LD format\n * @type {string}\n * @memberof UiAsset\n */\n assetJsonLd?: string;\n /**\n * Contains serialized custom properties in the JSON format.\n * @type {string}\n * @memberof UiAsset\n */\n customJsonAsString?: string;\n /**\n * Contains serialized custom properties in the JSON LD format. Contrary to the customJsonAsString field, this string must represent a JSON LD object and will be affected by JSON LD compaction and expansion. Due to a technical limitation, the properties can't be booleans.\n * @type {string}\n * @memberof UiAsset\n */\n customJsonLdAsString?: string;\n /**\n * Same as customJsonAsString but the data will be stored in the private properties.\n * @type {string}\n * @memberof UiAsset\n */\n privateCustomJsonAsString?: string;\n /**\n * Same as customJsonLdAsString but the data will be stored in the private properties. The same limitations apply.\n * @type {string}\n * @memberof UiAsset\n */\n privateCustomJsonLdAsString?: string;\n}\n\n/**\n * Check if a given object implements the UiAsset interface.\n */\nexport function instanceOfUiAsset(value: any): value is UiAsset {\n if (\n !('dataSourceAvailability' in value) ||\n value['dataSourceAvailability'] === undefined\n )\n return false;\n if (!('assetId' in value) || value['assetId'] === undefined) return false;\n if (\n !('connectorEndpoint' in value) ||\n value['connectorEndpoint'] === undefined\n )\n return false;\n if (!('participantId' in value) || value['participantId'] === undefined)\n return false;\n if (!('title' in value) || value['title'] === undefined) return false;\n if (\n !('creatorOrganizationName' in value) ||\n value['creatorOrganizationName'] === undefined\n )\n return false;\n if (!('isOwnConnector' in value) || value['isOwnConnector'] === undefined)\n return false;\n return true;\n}\n\nexport function UiAssetFromJSON(json: any): UiAsset {\n return UiAssetFromJSONTyped(json, false);\n}\n\nexport function UiAssetFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): UiAsset {\n if (json == null) {\n return json;\n }\n return {\n dataSourceAvailability: DataSourceAvailabilityFromJSON(\n json['dataSourceAvailability'],\n ),\n assetId: json['assetId'],\n connectorEndpoint: json['connectorEndpoint'],\n participantId: json['participantId'],\n title: json['title'],\n creatorOrganizationName: json['creatorOrganizationName'],\n onRequestContactEmail:\n json['onRequestContactEmail'] == null\n ? undefined\n : json['onRequestContactEmail'],\n onRequestContactEmailSubject:\n json['onRequestContactEmailSubject'] == null\n ? undefined\n : json['onRequestContactEmailSubject'],\n language: json['language'] == null ? undefined : json['language'],\n description:\n json['description'] == null ? undefined : json['description'],\n descriptionShortText:\n json['descriptionShortText'] == null\n ? undefined\n : json['descriptionShortText'],\n isOwnConnector: json['isOwnConnector'],\n publisherHomepage:\n json['publisherHomepage'] == null\n ? undefined\n : json['publisherHomepage'],\n licenseUrl: json['licenseUrl'] == null ? undefined : json['licenseUrl'],\n version: json['version'] == null ? undefined : json['version'],\n keywords: json['keywords'] == null ? undefined : json['keywords'],\n mediaType: json['mediaType'] == null ? undefined : json['mediaType'],\n landingPageUrl:\n json['landingPageUrl'] == null ? undefined : json['landingPageUrl'],\n httpDatasourceHintsProxyMethod:\n json['httpDatasourceHintsProxyMethod'] == null\n ? undefined\n : json['httpDatasourceHintsProxyMethod'],\n httpDatasourceHintsProxyPath:\n json['httpDatasourceHintsProxyPath'] == null\n ? undefined\n : json['httpDatasourceHintsProxyPath'],\n httpDatasourceHintsProxyQueryParams:\n json['httpDatasourceHintsProxyQueryParams'] == null\n ? undefined\n : json['httpDatasourceHintsProxyQueryParams'],\n httpDatasourceHintsProxyBody:\n json['httpDatasourceHintsProxyBody'] == null\n ? undefined\n : json['httpDatasourceHintsProxyBody'],\n dataModel: json['dataModel'] == null ? undefined : json['dataModel'],\n sovereignLegalName:\n json['sovereignLegalName'] == null\n ? undefined\n : json['sovereignLegalName'],\n dataSampleUrls:\n json['dataSampleUrls'] == null ? undefined : json['dataSampleUrls'],\n referenceFileUrls:\n json['referenceFileUrls'] == null\n ? undefined\n : json['referenceFileUrls'],\n referenceFilesDescription:\n json['referenceFilesDescription'] == null\n ? undefined\n : json['referenceFilesDescription'],\n conditionsForUse:\n json['conditionsForUse'] == null\n ? undefined\n : json['conditionsForUse'],\n dataUpdateFrequency:\n json['dataUpdateFrequency'] == null\n ? undefined\n : json['dataUpdateFrequency'],\n temporalCoverageFrom:\n json['temporalCoverageFrom'] == null\n ? undefined\n : new Date(json['temporalCoverageFrom']),\n temporalCoverageToInclusive:\n json['temporalCoverageToInclusive'] == null\n ? undefined\n : new Date(json['temporalCoverageToInclusive']),\n sphinxFields:\n json['sphinxFields'] == null\n ? undefined\n : UiAssetExtForSphinxFromJSON(json['sphinxFields']),\n assetJsonLd:\n json['assetJsonLd'] == null ? undefined : json['assetJsonLd'],\n customJsonAsString:\n json['customJsonAsString'] == null\n ? undefined\n : json['customJsonAsString'],\n customJsonLdAsString:\n json['customJsonLdAsString'] == null\n ? undefined\n : json['customJsonLdAsString'],\n privateCustomJsonAsString:\n json['privateCustomJsonAsString'] == null\n ? undefined\n : json['privateCustomJsonAsString'],\n privateCustomJsonLdAsString:\n json['privateCustomJsonLdAsString'] == null\n ? undefined\n : json['privateCustomJsonLdAsString'],\n };\n}\n\nexport function UiAssetToJSON(json: any): UiAsset {\n return UiAssetToJSONTyped(json, false);\n}\n\nexport function UiAssetToJSONTyped(\n value?: UiAsset | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n dataSourceAvailability: DataSourceAvailabilityToJSON(\n value['dataSourceAvailability'],\n ),\n assetId: value['assetId'],\n connectorEndpoint: value['connectorEndpoint'],\n participantId: value['participantId'],\n title: value['title'],\n creatorOrganizationName: value['creatorOrganizationName'],\n onRequestContactEmail: value['onRequestContactEmail'],\n onRequestContactEmailSubject: value['onRequestContactEmailSubject'],\n language: value['language'],\n description: value['description'],\n descriptionShortText: value['descriptionShortText'],\n isOwnConnector: value['isOwnConnector'],\n publisherHomepage: value['publisherHomepage'],\n licenseUrl: value['licenseUrl'],\n version: value['version'],\n keywords: value['keywords'],\n mediaType: value['mediaType'],\n landingPageUrl: value['landingPageUrl'],\n httpDatasourceHintsProxyMethod: value['httpDatasourceHintsProxyMethod'],\n httpDatasourceHintsProxyPath: value['httpDatasourceHintsProxyPath'],\n httpDatasourceHintsProxyQueryParams:\n value['httpDatasourceHintsProxyQueryParams'],\n httpDatasourceHintsProxyBody: value['httpDatasourceHintsProxyBody'],\n dataModel: value['dataModel'],\n sovereignLegalName: value['sovereignLegalName'],\n dataSampleUrls: value['dataSampleUrls'],\n referenceFileUrls: value['referenceFileUrls'],\n referenceFilesDescription: value['referenceFilesDescription'],\n conditionsForUse: value['conditionsForUse'],\n dataUpdateFrequency: value['dataUpdateFrequency'],\n temporalCoverageFrom:\n value['temporalCoverageFrom'] == null\n ? undefined\n : value['temporalCoverageFrom'].toISOString().substring(0, 10),\n temporalCoverageToInclusive:\n value['temporalCoverageToInclusive'] == null\n ? undefined\n : value['temporalCoverageToInclusive']\n .toISOString()\n .substring(0, 10),\n sphinxFields: UiAssetExtForSphinxToJSON(value['sphinxFields']),\n assetJsonLd: value['assetJsonLd'],\n customJsonAsString: value['customJsonAsString'],\n customJsonLdAsString: value['customJsonLdAsString'],\n privateCustomJsonAsString: value['privateCustomJsonAsString'],\n privateCustomJsonLdAsString: value['privateCustomJsonLdAsString'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n/* eslint-disable */\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n/**\n * Type-Safe ODRL Policy Operator as supported by the sovity product landscape\n * @export\n */\nexport const OperatorDto = {\n Eq: 'EQ',\n Neq: 'NEQ',\n Gt: 'GT',\n Geq: 'GEQ',\n Lt: 'LT',\n Leq: 'LEQ',\n In: 'IN',\n HasPart: 'HAS_PART',\n IsA: 'IS_A',\n IsAllOf: 'IS_ALL_OF',\n IsAnyOf: 'IS_ANY_OF',\n IsNoneOf: 'IS_NONE_OF',\n} as const;\nexport type OperatorDto = (typeof OperatorDto)[keyof typeof OperatorDto];\n\nexport function instanceOfOperatorDto(value: any): boolean {\n for (const key in OperatorDto) {\n if (Object.prototype.hasOwnProperty.call(OperatorDto, key)) {\n if (OperatorDto[key as keyof typeof OperatorDto] === value) {\n return true;\n }\n }\n }\n return false;\n}\n\nexport function OperatorDtoFromJSON(json: any): OperatorDto {\n return OperatorDtoFromJSONTyped(json, false);\n}\n\nexport function OperatorDtoFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): OperatorDto {\n return json as OperatorDto;\n}\n\nexport function OperatorDtoToJSON(value?: OperatorDto | null): any {\n return value as any;\n}\n\nexport function OperatorDtoToJSONTyped(\n value: any,\n ignoreDiscriminator: boolean,\n): OperatorDto {\n return value as OperatorDto;\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n/* eslint-disable */\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n/**\n * Supported Types of values for the right hand side of an expression\n * @export\n */\nexport const UiPolicyLiteralType = {\n String: 'STRING',\n StringList: 'STRING_LIST',\n Json: 'JSON',\n} as const;\nexport type UiPolicyLiteralType =\n (typeof UiPolicyLiteralType)[keyof typeof UiPolicyLiteralType];\n\nexport function instanceOfUiPolicyLiteralType(value: any): boolean {\n for (const key in UiPolicyLiteralType) {\n if (Object.prototype.hasOwnProperty.call(UiPolicyLiteralType, key)) {\n if (\n UiPolicyLiteralType[key as keyof typeof UiPolicyLiteralType] ===\n value\n ) {\n return true;\n }\n }\n }\n return false;\n}\n\nexport function UiPolicyLiteralTypeFromJSON(json: any): UiPolicyLiteralType {\n return UiPolicyLiteralTypeFromJSONTyped(json, false);\n}\n\nexport function UiPolicyLiteralTypeFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): UiPolicyLiteralType {\n return json as UiPolicyLiteralType;\n}\n\nexport function UiPolicyLiteralTypeToJSON(\n value?: UiPolicyLiteralType | null,\n): any {\n return value as any;\n}\n\nexport function UiPolicyLiteralTypeToJSONTyped(\n value: any,\n ignoreDiscriminator: boolean,\n): UiPolicyLiteralType {\n return value as UiPolicyLiteralType;\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {UiPolicyLiteralType} from './UiPolicyLiteralType';\nimport {\n UiPolicyLiteralTypeFromJSON,\n UiPolicyLiteralTypeFromJSONTyped,\n UiPolicyLiteralTypeToJSON,\n UiPolicyLiteralTypeToJSONTyped,\n} from './UiPolicyLiteralType';\n\n/**\n * Sum type: A String, a list of Strings or a generic JSON value.\n * @export\n * @interface UiPolicyLiteral\n */\nexport interface UiPolicyLiteral {\n /**\n * Value Type\n * @type {UiPolicyLiteralType}\n * @memberof UiPolicyLiteral\n */\n type: UiPolicyLiteralType;\n /**\n * Only for types STRING and JSON\n * @type {string}\n * @memberof UiPolicyLiteral\n */\n value?: string;\n /**\n * Only for type STRING_LIST\n * @type {Array<string>}\n * @memberof UiPolicyLiteral\n */\n valueList?: Array<string>;\n}\n\n/**\n * Check if a given object implements the UiPolicyLiteral interface.\n */\nexport function instanceOfUiPolicyLiteral(\n value: any,\n): value is UiPolicyLiteral {\n if (!('type' in value) || value['type'] === undefined) return false;\n return true;\n}\n\nexport function UiPolicyLiteralFromJSON(json: any): UiPolicyLiteral {\n return UiPolicyLiteralFromJSONTyped(json, false);\n}\n\nexport function UiPolicyLiteralFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): UiPolicyLiteral {\n if (json == null) {\n return json;\n }\n return {\n type: UiPolicyLiteralTypeFromJSON(json['type']),\n value: json['value'] == null ? undefined : json['value'],\n valueList: json['valueList'] == null ? undefined : json['valueList'],\n };\n}\n\nexport function UiPolicyLiteralToJSON(json: any): UiPolicyLiteral {\n return UiPolicyLiteralToJSONTyped(json, false);\n}\n\nexport function UiPolicyLiteralToJSONTyped(\n value?: UiPolicyLiteral | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n type: UiPolicyLiteralTypeToJSON(value['type']),\n value: value['value'],\n valueList: value['valueList'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {OperatorDto} from './OperatorDto';\nimport {\n OperatorDtoFromJSON,\n OperatorDtoFromJSONTyped,\n OperatorDtoToJSON,\n OperatorDtoToJSONTyped,\n} from './OperatorDto';\nimport type {UiPolicyLiteral} from './UiPolicyLiteral';\nimport {\n UiPolicyLiteralFromJSON,\n UiPolicyLiteralFromJSONTyped,\n UiPolicyLiteralToJSON,\n UiPolicyLiteralToJSONTyped,\n} from './UiPolicyLiteral';\n\n/**\n * ODRL AtomicConstraint as supported by the sovity product landscape. For example 'a EQ b', 'c IN [d, e, f]'\n * @export\n * @interface UiPolicyConstraint\n */\nexport interface UiPolicyConstraint {\n /**\n * Left side of the expression.\n * @type {string}\n * @memberof UiPolicyConstraint\n */\n left: string;\n /**\n * Operator, e.g. EQ\n * @type {OperatorDto}\n * @memberof UiPolicyConstraint\n */\n operator: OperatorDto;\n /**\n * Right side of the expression\n * @type {UiPolicyLiteral}\n * @memberof UiPolicyConstraint\n */\n right: UiPolicyLiteral;\n}\n\n/**\n * Check if a given object implements the UiPolicyConstraint interface.\n */\nexport function instanceOfUiPolicyConstraint(\n value: any,\n): value is UiPolicyConstraint {\n if (!('left' in value) || value['left'] === undefined) return false;\n if (!('operator' in value) || value['operator'] === undefined) return false;\n if (!('right' in value) || value['right'] === undefined) return false;\n return true;\n}\n\nexport function UiPolicyConstraintFromJSON(json: any): UiPolicyConstraint {\n return UiPolicyConstraintFromJSONTyped(json, false);\n}\n\nexport function UiPolicyConstraintFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): UiPolicyConstraint {\n if (json == null) {\n return json;\n }\n return {\n left: json['left'],\n operator: OperatorDtoFromJSON(json['operator']),\n right: UiPolicyLiteralFromJSON(json['right']),\n };\n}\n\nexport function UiPolicyConstraintToJSON(json: any): UiPolicyConstraint {\n return UiPolicyConstraintToJSONTyped(json, false);\n}\n\nexport function UiPolicyConstraintToJSONTyped(\n value?: UiPolicyConstraint | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n left: value['left'],\n operator: OperatorDtoToJSON(value['operator']),\n right: UiPolicyLiteralToJSON(value['right']),\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n/* eslint-disable */\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n/**\n * Ui Policy Expression types:\n * * `CONSTRAINT` - Expression 'a=b'\n * * `AND` - Conjunction of several expressions. Evaluates to true iff all child expressions are true.\n * * `OR` - Disjunction of several expressions. Evaluates to true iff at least one child expression is true.\n * * `XONE` - XONE operation. Evaluates to true iff exactly one child expression is true.\n *\n * @export\n */\nexport const UiPolicyExpressionType = {\n Empty: 'EMPTY',\n Constraint: 'CONSTRAINT',\n And: 'AND',\n Or: 'OR',\n Xone: 'XONE',\n} as const;\nexport type UiPolicyExpressionType =\n (typeof UiPolicyExpressionType)[keyof typeof UiPolicyExpressionType];\n\nexport function instanceOfUiPolicyExpressionType(value: any): boolean {\n for (const key in UiPolicyExpressionType) {\n if (Object.prototype.hasOwnProperty.call(UiPolicyExpressionType, key)) {\n if (\n UiPolicyExpressionType[\n key as keyof typeof UiPolicyExpressionType\n ] === value\n ) {\n return true;\n }\n }\n }\n return false;\n}\n\nexport function UiPolicyExpressionTypeFromJSON(\n json: any,\n): UiPolicyExpressionType {\n return UiPolicyExpressionTypeFromJSONTyped(json, false);\n}\n\nexport function UiPolicyExpressionTypeFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): UiPolicyExpressionType {\n return json as UiPolicyExpressionType;\n}\n\nexport function UiPolicyExpressionTypeToJSON(\n value?: UiPolicyExpressionType | null,\n): any {\n return value as any;\n}\n\nexport function UiPolicyExpressionTypeToJSONTyped(\n value: any,\n ignoreDiscriminator: boolean,\n): UiPolicyExpressionType {\n return value as UiPolicyExpressionType;\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {UiPolicyConstraint} from './UiPolicyConstraint';\nimport {\n UiPolicyConstraintFromJSON,\n UiPolicyConstraintFromJSONTyped,\n UiPolicyConstraintToJSON,\n UiPolicyConstraintToJSONTyped,\n} from './UiPolicyConstraint';\nimport type {UiPolicyExpressionType} from './UiPolicyExpressionType';\nimport {\n UiPolicyExpressionTypeFromJSON,\n UiPolicyExpressionTypeFromJSONTyped,\n UiPolicyExpressionTypeToJSON,\n UiPolicyExpressionTypeToJSONTyped,\n} from './UiPolicyExpressionType';\n\n/**\n * ODRL constraint as supported by the sovity product landscape\n * @export\n * @interface UiPolicyExpression\n */\nexport interface UiPolicyExpression {\n /**\n * Expression type\n * @type {UiPolicyExpressionType}\n * @memberof UiPolicyExpression\n */\n type: UiPolicyExpressionType;\n /**\n * Only for types AND, OR, XONE. List of sub-expressions to be evaluated according to the expressionType.\n * @type {Array<UiPolicyExpression>}\n * @memberof UiPolicyExpression\n */\n expressions?: Array<UiPolicyExpression>;\n /**\n * Only for type CONSTRAINT. A single constraint.\n * @type {UiPolicyConstraint}\n * @memberof UiPolicyExpression\n */\n constraint?: UiPolicyConstraint;\n}\n\n/**\n * Check if a given object implements the UiPolicyExpression interface.\n */\nexport function instanceOfUiPolicyExpression(\n value: any,\n): value is UiPolicyExpression {\n if (!('type' in value) || value['type'] === undefined) return false;\n return true;\n}\n\nexport function UiPolicyExpressionFromJSON(json: any): UiPolicyExpression {\n return UiPolicyExpressionFromJSONTyped(json, false);\n}\n\nexport function UiPolicyExpressionFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): UiPolicyExpression {\n if (json == null) {\n return json;\n }\n return {\n type: UiPolicyExpressionTypeFromJSON(json['type']),\n expressions:\n json['expressions'] == null\n ? undefined\n : (json['expressions'] as Array<any>).map(\n UiPolicyExpressionFromJSON,\n ),\n constraint:\n json['constraint'] == null\n ? undefined\n : UiPolicyConstraintFromJSON(json['constraint']),\n };\n}\n\nexport function UiPolicyExpressionToJSON(json: any): UiPolicyExpression {\n return UiPolicyExpressionToJSONTyped(json, false);\n}\n\nexport function UiPolicyExpressionToJSONTyped(\n value?: UiPolicyExpression | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n type: UiPolicyExpressionTypeToJSON(value['type']),\n expressions:\n value['expressions'] == null\n ? undefined\n : (value['expressions'] as Array<any>).map(\n UiPolicyExpressionToJSON,\n ),\n constraint: UiPolicyConstraintToJSON(value['constraint']),\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {UiPolicyExpression} from './UiPolicyExpression';\nimport {\n UiPolicyExpressionFromJSON,\n UiPolicyExpressionFromJSONTyped,\n UiPolicyExpressionToJSON,\n UiPolicyExpressionToJSONTyped,\n} from './UiPolicyExpression';\n\n/**\n * Type-Safe OpenAPI generator friendly ODLR policy subset as endorsed by sovity.\n * @export\n * @interface UiPolicy\n */\nexport interface UiPolicy {\n /**\n * EDC Policy JSON-LD. This is required because the EDC requires the full policy when initiating contract negotiations.\n * @type {string}\n * @memberof UiPolicy\n */\n policyJsonLd: string;\n /**\n * Policy expression\n * @type {UiPolicyExpression}\n * @memberof UiPolicy\n */\n expression?: UiPolicyExpression;\n /**\n * When trying to reduce the policy JSON-LD to our opinionated subset of functionalities, many fields and functionalities are unsupported. Should any discrepancies occur during the mapping process, we'll collect them here.\n * @type {Array<string>}\n * @memberof UiPolicy\n */\n errors: Array<string>;\n}\n\n/**\n * Check if a given object implements the UiPolicy interface.\n */\nexport function instanceOfUiPolicy(value: any): value is UiPolicy {\n if (!('policyJsonLd' in value) || value['policyJsonLd'] === undefined)\n return false;\n if (!('errors' in value) || value['errors'] === undefined) return false;\n return true;\n}\n\nexport function UiPolicyFromJSON(json: any): UiPolicy {\n return UiPolicyFromJSONTyped(json, false);\n}\n\nexport function UiPolicyFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): UiPolicy {\n if (json == null) {\n return json;\n }\n return {\n policyJsonLd: json['policyJsonLd'],\n expression:\n json['expression'] == null\n ? undefined\n : UiPolicyExpressionFromJSON(json['expression']),\n errors: json['errors'],\n };\n}\n\nexport function UiPolicyToJSON(json: any): UiPolicy {\n return UiPolicyToJSONTyped(json, false);\n}\n\nexport function UiPolicyToJSONTyped(\n value?: UiPolicy | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n policyJsonLd: value['policyJsonLd'],\n expression: UiPolicyExpressionToJSON(value['expression']),\n errors: value['errors'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {ContractAgreementDirection} from './ContractAgreementDirection';\nimport {\n ContractAgreementDirectionFromJSON,\n ContractAgreementDirectionFromJSONTyped,\n ContractAgreementDirectionToJSON,\n ContractAgreementDirectionToJSONTyped,\n} from './ContractAgreementDirection';\nimport type {ContractAgreementTerminationInfo} from './ContractAgreementTerminationInfo';\nimport {\n ContractAgreementTerminationInfoFromJSON,\n ContractAgreementTerminationInfoFromJSONTyped,\n ContractAgreementTerminationInfoToJSON,\n ContractAgreementTerminationInfoToJSONTyped,\n} from './ContractAgreementTerminationInfo';\nimport type {ContractAgreementTransferProcess} from './ContractAgreementTransferProcess';\nimport {\n ContractAgreementTransferProcessFromJSON,\n ContractAgreementTransferProcessFromJSONTyped,\n ContractAgreementTransferProcessToJSON,\n ContractAgreementTransferProcessToJSONTyped,\n} from './ContractAgreementTransferProcess';\nimport type {ContractTerminationStatus} from './ContractTerminationStatus';\nimport {\n ContractTerminationStatusFromJSON,\n ContractTerminationStatusFromJSONTyped,\n ContractTerminationStatusToJSON,\n ContractTerminationStatusToJSONTyped,\n} from './ContractTerminationStatus';\nimport type {UiAsset} from './UiAsset';\nimport {\n UiAssetFromJSON,\n UiAssetFromJSONTyped,\n UiAssetToJSON,\n UiAssetToJSONTyped,\n} from './UiAsset';\nimport type {UiPolicy} from './UiPolicy';\nimport {\n UiPolicyFromJSON,\n UiPolicyFromJSONTyped,\n UiPolicyToJSON,\n UiPolicyToJSONTyped,\n} from './UiPolicy';\n\n/**\n * Contract Agreement Details Page\n * @export\n * @interface ContractDetailPageResult\n */\nexport interface ContractDetailPageResult {\n /**\n * Contract Agreement ID\n * @type {string}\n * @memberof ContractDetailPageResult\n */\n contractAgreementId: string;\n /**\n * Contract Negotiation ID\n * @type {string}\n * @memberof ContractDetailPageResult\n */\n contractNegotiationId: string;\n /**\n * Incoming vs Outgoing\n * @type {ContractAgreementDirection}\n * @memberof ContractDetailPageResult\n */\n direction: ContractAgreementDirection;\n /**\n * Other Connector's Endpoint\n * @type {string}\n * @memberof ContractDetailPageResult\n */\n counterPartyAddress: string;\n /**\n * Other Connector's ID\n * @type {string}\n * @memberof ContractDetailPageResult\n */\n counterPartyId: string;\n /**\n * Contract Agreements Signing Date\n * @type {Date}\n * @memberof ContractDetailPageResult\n */\n contractSigningDate: Date;\n /**\n * Asset details\n * @type {UiAsset}\n * @memberof ContractDetailPageResult\n */\n asset: UiAsset;\n /**\n * Contract Policy\n * @type {UiPolicy}\n * @memberof ContractDetailPageResult\n */\n contractPolicy: UiPolicy;\n /**\n * Contract Agreement's Transfer Processes\n * @type {Array<ContractAgreementTransferProcess>}\n * @memberof ContractDetailPageResult\n */\n transferProcesses: Array<ContractAgreementTransferProcess>;\n /**\n * Contract Agreement's Termination Status\n * @type {ContractTerminationStatus}\n * @memberof ContractDetailPageResult\n */\n terminationStatus: ContractTerminationStatus;\n /**\n * Contract Agreement's Metadata\n * @type {ContractAgreementTerminationInfo}\n * @memberof ContractDetailPageResult\n */\n terminationInformation?: ContractAgreementTerminationInfo;\n}\n\n/**\n * Check if a given object implements the ContractDetailPageResult interface.\n */\nexport function instanceOfContractDetailPageResult(\n value: any,\n): value is ContractDetailPageResult {\n if (\n !('contractAgreementId' in value) ||\n value['contractAgreementId'] === undefined\n )\n return false;\n if (\n !('contractNegotiationId' in value) ||\n value['contractNegotiationId'] === undefined\n )\n return false;\n if (!('direction' in value) || value['direction'] === undefined)\n return false;\n if (\n !('counterPartyAddress' in value) ||\n value['counterPartyAddress'] === undefined\n )\n return false;\n if (!('counterPartyId' in value) || value['counterPartyId'] === undefined)\n return false;\n if (\n !('contractSigningDate' in value) ||\n value['contractSigningDate'] === undefined\n )\n return false;\n if (!('asset' in value) || value['asset'] === undefined) return false;\n if (!('contractPolicy' in value) || value['contractPolicy'] === undefined)\n return false;\n if (\n !('transferProcesses' in value) ||\n value['transferProcesses'] === undefined\n )\n return false;\n if (\n !('terminationStatus' in value) ||\n value['terminationStatus'] === undefined\n )\n return false;\n return true;\n}\n\nexport function ContractDetailPageResultFromJSON(\n json: any,\n): ContractDetailPageResult {\n return ContractDetailPageResultFromJSONTyped(json, false);\n}\n\nexport function ContractDetailPageResultFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): ContractDetailPageResult {\n if (json == null) {\n return json;\n }\n return {\n contractAgreementId: json['contractAgreementId'],\n contractNegotiationId: json['contractNegotiationId'],\n direction: ContractAgreementDirectionFromJSON(json['direction']),\n counterPartyAddress: json['counterPartyAddress'],\n counterPartyId: json['counterPartyId'],\n contractSigningDate: new Date(json['contractSigningDate']),\n asset: UiAssetFromJSON(json['asset']),\n contractPolicy: UiPolicyFromJSON(json['contractPolicy']),\n transferProcesses: (json['transferProcesses'] as Array<any>).map(\n ContractAgreementTransferProcessFromJSON,\n ),\n terminationStatus: ContractTerminationStatusFromJSON(\n json['terminationStatus'],\n ),\n terminationInformation:\n json['terminationInformation'] == null\n ? undefined\n : ContractAgreementTerminationInfoFromJSON(\n json['terminationInformation'],\n ),\n };\n}\n\nexport function ContractDetailPageResultToJSON(\n json: any,\n): ContractDetailPageResult {\n return ContractDetailPageResultToJSONTyped(json, false);\n}\n\nexport function ContractDetailPageResultToJSONTyped(\n value?: ContractDetailPageResult | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n contractAgreementId: value['contractAgreementId'],\n contractNegotiationId: value['contractNegotiationId'],\n direction: ContractAgreementDirectionToJSON(value['direction']),\n counterPartyAddress: value['counterPartyAddress'],\n counterPartyId: value['counterPartyId'],\n contractSigningDate: value['contractSigningDate'].toISOString(),\n asset: UiAssetToJSON(value['asset']),\n contractPolicy: UiPolicyToJSON(value['contractPolicy']),\n transferProcesses: (value['transferProcesses'] as Array<any>).map(\n ContractAgreementTransferProcessToJSON,\n ),\n terminationStatus: ContractTerminationStatusToJSON(\n value['terminationStatus'],\n ),\n terminationInformation: ContractAgreementTerminationInfoToJSON(\n value['terminationInformation'],\n ),\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {CallbackAddressDto} from './CallbackAddressDto';\nimport {\n CallbackAddressDtoFromJSON,\n CallbackAddressDtoFromJSONTyped,\n CallbackAddressDtoToJSON,\n CallbackAddressDtoToJSONTyped,\n} from './CallbackAddressDto';\n\n/**\n * Data for initiating a Contract Negotiation\n * @export\n * @interface ContractNegotiationRequest\n */\nexport interface ContractNegotiationRequest {\n /**\n * Counter Party Id\n * @type {string}\n * @memberof ContractNegotiationRequest\n */\n counterPartyId: string;\n /**\n * Counter Party Address\n * @type {string}\n * @memberof ContractNegotiationRequest\n */\n counterPartyAddress: string;\n /**\n * Contract Offer Dto\n * @type {string}\n * @memberof ContractNegotiationRequest\n */\n contractOfferId: string;\n /**\n * Policy JsonLd\n * @type {string}\n * @memberof ContractNegotiationRequest\n */\n policyJsonLd: string;\n /**\n * Asset ID\n * @type {string}\n * @memberof ContractNegotiationRequest\n */\n assetId: string;\n /**\n * List of endpoints to call upon given transfer events\n * @type {Array<CallbackAddressDto>}\n * @memberof ContractNegotiationRequest\n */\n callbackAddresses?: Array<CallbackAddressDto>;\n}\n\n/**\n * Check if a given object implements the ContractNegotiationRequest interface.\n */\nexport function instanceOfContractNegotiationRequest(\n value: any,\n): value is ContractNegotiationRequest {\n if (!('counterPartyId' in value) || value['counterPartyId'] === undefined)\n return false;\n if (\n !('counterPartyAddress' in value) ||\n value['counterPartyAddress'] === undefined\n )\n return false;\n if (!('contractOfferId' in value) || value['contractOfferId'] === undefined)\n return false;\n if (!('policyJsonLd' in value) || value['policyJsonLd'] === undefined)\n return false;\n if (!('assetId' in value) || value['assetId'] === undefined) return false;\n return true;\n}\n\nexport function ContractNegotiationRequestFromJSON(\n json: any,\n): ContractNegotiationRequest {\n return ContractNegotiationRequestFromJSONTyped(json, false);\n}\n\nexport function ContractNegotiationRequestFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): ContractNegotiationRequest {\n if (json == null) {\n return json;\n }\n return {\n counterPartyId: json['counterPartyId'],\n counterPartyAddress: json['counterPartyAddress'],\n contractOfferId: json['contractOfferId'],\n policyJsonLd: json['policyJsonLd'],\n assetId: json['assetId'],\n callbackAddresses:\n json['callbackAddresses'] == null\n ? undefined\n : (json['callbackAddresses'] as Array<any>).map(\n CallbackAddressDtoFromJSON,\n ),\n };\n}\n\nexport function ContractNegotiationRequestToJSON(\n json: any,\n): ContractNegotiationRequest {\n return ContractNegotiationRequestToJSONTyped(json, false);\n}\n\nexport function ContractNegotiationRequestToJSONTyped(\n value?: ContractNegotiationRequest | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n counterPartyId: value['counterPartyId'],\n counterPartyAddress: value['counterPartyAddress'],\n contractOfferId: value['contractOfferId'],\n policyJsonLd: value['policyJsonLd'],\n assetId: value['assetId'],\n callbackAddresses:\n value['callbackAddresses'] == null\n ? undefined\n : (value['callbackAddresses'] as Array<any>).map(\n CallbackAddressDtoToJSON,\n ),\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n/* eslint-disable */\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n/**\n * Simplified Contract Negotiation State to be used in UI\n * @export\n */\nexport const ContractNegotiationSimplifiedState = {\n InProgress: 'IN_PROGRESS',\n Agreed: 'AGREED',\n Terminated: 'TERMINATED',\n} as const;\nexport type ContractNegotiationSimplifiedState =\n (typeof ContractNegotiationSimplifiedState)[keyof typeof ContractNegotiationSimplifiedState];\n\nexport function instanceOfContractNegotiationSimplifiedState(\n value: any,\n): boolean {\n for (const key in ContractNegotiationSimplifiedState) {\n if (\n Object.prototype.hasOwnProperty.call(\n ContractNegotiationSimplifiedState,\n key,\n )\n ) {\n if (\n ContractNegotiationSimplifiedState[\n key as keyof typeof ContractNegotiationSimplifiedState\n ] === value\n ) {\n return true;\n }\n }\n }\n return false;\n}\n\nexport function ContractNegotiationSimplifiedStateFromJSON(\n json: any,\n): ContractNegotiationSimplifiedState {\n return ContractNegotiationSimplifiedStateFromJSONTyped(json, false);\n}\n\nexport function ContractNegotiationSimplifiedStateFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): ContractNegotiationSimplifiedState {\n return json as ContractNegotiationSimplifiedState;\n}\n\nexport function ContractNegotiationSimplifiedStateToJSON(\n value?: ContractNegotiationSimplifiedState | null,\n): any {\n return value as any;\n}\n\nexport function ContractNegotiationSimplifiedStateToJSONTyped(\n value: any,\n ignoreDiscriminator: boolean,\n): ContractNegotiationSimplifiedState {\n return value as ContractNegotiationSimplifiedState;\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {ContractNegotiationSimplifiedState} from './ContractNegotiationSimplifiedState';\nimport {\n ContractNegotiationSimplifiedStateFromJSON,\n ContractNegotiationSimplifiedStateFromJSONTyped,\n ContractNegotiationSimplifiedStateToJSON,\n ContractNegotiationSimplifiedStateToJSONTyped,\n} from './ContractNegotiationSimplifiedState';\n\n/**\n * Contract Negotiation State interpreted\n * @export\n * @interface ContractNegotiationState\n */\nexport interface ContractNegotiationState {\n /**\n * State name or 'CUSTOM'. State names only exist for original EDC Contract Negotiation States.\n * @type {string}\n * @memberof ContractNegotiationState\n */\n name: string;\n /**\n * State code\n * @type {number}\n * @memberof ContractNegotiationState\n */\n code: number;\n /**\n * Whether we are running, in an error state or done.\n * @type {ContractNegotiationSimplifiedState}\n * @memberof ContractNegotiationState\n */\n simplifiedState: ContractNegotiationSimplifiedState;\n}\n\n/**\n * Check if a given object implements the ContractNegotiationState interface.\n */\nexport function instanceOfContractNegotiationState(\n value: any,\n): value is ContractNegotiationState {\n if (!('name' in value) || value['name'] === undefined) return false;\n if (!('code' in value) || value['code'] === undefined) return false;\n if (!('simplifiedState' in value) || value['simplifiedState'] === undefined)\n return false;\n return true;\n}\n\nexport function ContractNegotiationStateFromJSON(\n json: any,\n): ContractNegotiationState {\n return ContractNegotiationStateFromJSONTyped(json, false);\n}\n\nexport function ContractNegotiationStateFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): ContractNegotiationState {\n if (json == null) {\n return json;\n }\n return {\n name: json['name'],\n code: json['code'],\n simplifiedState: ContractNegotiationSimplifiedStateFromJSON(\n json['simplifiedState'],\n ),\n };\n}\n\nexport function ContractNegotiationStateToJSON(\n json: any,\n): ContractNegotiationState {\n return ContractNegotiationStateToJSONTyped(json, false);\n}\n\nexport function ContractNegotiationStateToJSONTyped(\n value?: ContractNegotiationState | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n name: value['name'],\n code: value['code'],\n simplifiedState: ContractNegotiationSimplifiedStateToJSON(\n value['simplifiedState'],\n ),\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {ContractAgreementTerminationInfo} from './ContractAgreementTerminationInfo';\nimport {\n ContractAgreementTerminationInfoFromJSON,\n ContractAgreementTerminationInfoFromJSONTyped,\n ContractAgreementTerminationInfoToJSON,\n ContractAgreementTerminationInfoToJSONTyped,\n} from './ContractAgreementTerminationInfo';\nimport type {ContractNegotiationState} from './ContractNegotiationState';\nimport {\n ContractNegotiationStateFromJSON,\n ContractNegotiationStateFromJSONTyped,\n ContractNegotiationStateToJSON,\n ContractNegotiationStateToJSONTyped,\n} from './ContractNegotiationState';\n\n/**\n * Contract Negotiation state\n * @export\n * @interface ContractNegotiationStateResult\n */\nexport interface ContractNegotiationStateResult {\n /**\n * Contract Negotiation ID\n * @type {string}\n * @memberof ContractNegotiationStateResult\n */\n contractNegotiationId: string;\n /**\n * Contract Negotiation State\n * @type {ContractNegotiationState}\n * @memberof ContractNegotiationStateResult\n */\n state: ContractNegotiationState;\n /**\n * Contract Agreement ID\n * @type {string}\n * @memberof ContractNegotiationStateResult\n */\n contractAgreementId?: string;\n /**\n * Contract Agreement Termination State\n * @type {ContractAgreementTerminationInfo}\n * @memberof ContractNegotiationStateResult\n */\n contractAgreementTerminationInfo?: ContractAgreementTerminationInfo;\n /**\n * Contract Negotiation State Last Change\n * @type {Date}\n * @memberof ContractNegotiationStateResult\n */\n stateChangedAt: Date;\n}\n\n/**\n * Check if a given object implements the ContractNegotiationStateResult interface.\n */\nexport function instanceOfContractNegotiationStateResult(\n value: any,\n): value is ContractNegotiationStateResult {\n if (\n !('contractNegotiationId' in value) ||\n value['contractNegotiationId'] === undefined\n )\n return false;\n if (!('state' in value) || value['state'] === undefined) return false;\n if (!('stateChangedAt' in value) || value['stateChangedAt'] === undefined)\n return false;\n return true;\n}\n\nexport function ContractNegotiationStateResultFromJSON(\n json: any,\n): ContractNegotiationStateResult {\n return ContractNegotiationStateResultFromJSONTyped(json, false);\n}\n\nexport function ContractNegotiationStateResultFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): ContractNegotiationStateResult {\n if (json == null) {\n return json;\n }\n return {\n contractNegotiationId: json['contractNegotiationId'],\n state: ContractNegotiationStateFromJSON(json['state']),\n contractAgreementId:\n json['contractAgreementId'] == null\n ? undefined\n : json['contractAgreementId'],\n contractAgreementTerminationInfo:\n json['contractAgreementTerminationInfo'] == null\n ? undefined\n : ContractAgreementTerminationInfoFromJSON(\n json['contractAgreementTerminationInfo'],\n ),\n stateChangedAt: new Date(json['stateChangedAt']),\n };\n}\n\nexport function ContractNegotiationStateResultToJSON(\n json: any,\n): ContractNegotiationStateResult {\n return ContractNegotiationStateResultToJSONTyped(json, false);\n}\n\nexport function ContractNegotiationStateResultToJSONTyped(\n value?: ContractNegotiationStateResult | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n contractNegotiationId: value['contractNegotiationId'],\n state: ContractNegotiationStateToJSON(value['state']),\n contractAgreementId: value['contractAgreementId'],\n contractAgreementTerminationInfo:\n ContractAgreementTerminationInfoToJSON(\n value['contractAgreementTerminationInfo'],\n ),\n stateChangedAt: value['stateChangedAt'].toISOString(),\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\n\n/**\n * Data for terminating a Contract Agreement\n * @export\n * @interface ContractTerminationRequest\n */\nexport interface ContractTerminationRequest {\n /**\n * A user explanation to detail why the contract was terminated.\n * @type {string}\n * @memberof ContractTerminationRequest\n */\n detail: string;\n /**\n * A short reason why this contract was terminated\n * @type {string}\n * @memberof ContractTerminationRequest\n */\n reason: string;\n}\n\n/**\n * Check if a given object implements the ContractTerminationRequest interface.\n */\nexport function instanceOfContractTerminationRequest(\n value: any,\n): value is ContractTerminationRequest {\n if (!('detail' in value) || value['detail'] === undefined) return false;\n if (!('reason' in value) || value['reason'] === undefined) return false;\n return true;\n}\n\nexport function ContractTerminationRequestFromJSON(\n json: any,\n): ContractTerminationRequest {\n return ContractTerminationRequestFromJSONTyped(json, false);\n}\n\nexport function ContractTerminationRequestFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): ContractTerminationRequest {\n if (json == null) {\n return json;\n }\n return {\n detail: json['detail'],\n reason: json['reason'],\n };\n}\n\nexport function ContractTerminationRequestToJSON(\n json: any,\n): ContractTerminationRequest {\n return ContractTerminationRequestToJSONTyped(json, false);\n}\n\nexport function ContractTerminationRequestToJSONTyped(\n value?: ContractTerminationRequest | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n detail: value['detail'],\n reason: value['reason'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {ContractAgreementDirection} from './ContractAgreementDirection';\nimport {\n ContractAgreementDirectionFromJSON,\n ContractAgreementDirectionFromJSONTyped,\n ContractAgreementDirectionToJSON,\n ContractAgreementDirectionToJSONTyped,\n} from './ContractAgreementDirection';\nimport type {ContractTerminationStatus} from './ContractTerminationStatus';\nimport {\n ContractTerminationStatusFromJSON,\n ContractTerminationStatusFromJSONTyped,\n ContractTerminationStatusToJSON,\n ContractTerminationStatusToJSONTyped,\n} from './ContractTerminationStatus';\n\n/**\n * Contracts Page Entry\n * @export\n * @interface ContractsPageEntry\n */\nexport interface ContractsPageEntry {\n /**\n * Contract Agreement ID\n * @type {string}\n * @memberof ContractsPageEntry\n */\n contractAgreementId: string;\n /**\n * Incoming vs Outgoing\n * @type {ContractAgreementDirection}\n * @memberof ContractsPageEntry\n */\n direction: ContractAgreementDirection;\n /**\n * Other Connector's ID\n * @type {string}\n * @memberof ContractsPageEntry\n */\n counterPartyId: string;\n /**\n * Contract Agreements Signing Date\n * @type {Date}\n * @memberof ContractsPageEntry\n */\n contractSigningDate: Date;\n /**\n * Asset ID\n * @type {string}\n * @memberof ContractsPageEntry\n */\n assetId: string;\n /**\n * Asset title\n * @type {string}\n * @memberof ContractsPageEntry\n */\n assetTitle: string;\n /**\n * Number of transfer processes\n * @type {number}\n * @memberof ContractsPageEntry\n */\n transferProcessesCount: number;\n /**\n * Contract Agreement's Termination Status\n * @type {ContractTerminationStatus}\n * @memberof ContractsPageEntry\n */\n terminationStatus: ContractTerminationStatus;\n /**\n * Contract Terminated At\n * @type {Date}\n * @memberof ContractsPageEntry\n */\n terminatedAt?: Date;\n}\n\n/**\n * Check if a given object implements the ContractsPageEntry interface.\n */\nexport function instanceOfContractsPageEntry(\n value: any,\n): value is ContractsPageEntry {\n if (\n !('contractAgreementId' in value) ||\n value['contractAgreementId'] === undefined\n )\n return false;\n if (!('direction' in value) || value['direction'] === undefined)\n return false;\n if (!('counterPartyId' in value) || value['counterPartyId'] === undefined)\n return false;\n if (\n !('contractSigningDate' in value) ||\n value['contractSigningDate'] === undefined\n )\n return false;\n if (!('assetId' in value) || value['assetId'] === undefined) return false;\n if (!('assetTitle' in value) || value['assetTitle'] === undefined)\n return false;\n if (\n !('transferProcessesCount' in value) ||\n value['transferProcessesCount'] === undefined\n )\n return false;\n if (\n !('terminationStatus' in value) ||\n value['terminationStatus'] === undefined\n )\n return false;\n return true;\n}\n\nexport function ContractsPageEntryFromJSON(json: any): ContractsPageEntry {\n return ContractsPageEntryFromJSONTyped(json, false);\n}\n\nexport function ContractsPageEntryFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): ContractsPageEntry {\n if (json == null) {\n return json;\n }\n return {\n contractAgreementId: json['contractAgreementId'],\n direction: ContractAgreementDirectionFromJSON(json['direction']),\n counterPartyId: json['counterPartyId'],\n contractSigningDate: new Date(json['contractSigningDate']),\n assetId: json['assetId'],\n assetTitle: json['assetTitle'],\n transferProcessesCount: json['transferProcessesCount'],\n terminationStatus: ContractTerminationStatusFromJSON(\n json['terminationStatus'],\n ),\n terminatedAt:\n json['terminatedAt'] == null\n ? undefined\n : new Date(json['terminatedAt']),\n };\n}\n\nexport function ContractsPageEntryToJSON(json: any): ContractsPageEntry {\n return ContractsPageEntryToJSONTyped(json, false);\n}\n\nexport function ContractsPageEntryToJSONTyped(\n value?: ContractsPageEntry | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n contractAgreementId: value['contractAgreementId'],\n direction: ContractAgreementDirectionToJSON(value['direction']),\n counterPartyId: value['counterPartyId'],\n contractSigningDate: value['contractSigningDate'].toISOString(),\n assetId: value['assetId'],\n assetTitle: value['assetTitle'],\n transferProcessesCount: value['transferProcessesCount'],\n terminationStatus: ContractTerminationStatusToJSON(\n value['terminationStatus'],\n ),\n terminatedAt:\n value['terminatedAt'] == null\n ? undefined\n : value['terminatedAt'].toISOString(),\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n/* eslint-disable */\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n/**\n * Properties, for which sorting in the contract agreement list page is enabled\n * @export\n */\nexport const ContractsPageSortProperty = {\n ContractName: 'CONTRACT_NAME',\n SignedAt: 'SIGNED_AT',\n TerminatedAt: 'TERMINATED_AT',\n Transfers: 'TRANSFERS',\n} as const;\nexport type ContractsPageSortProperty =\n (typeof ContractsPageSortProperty)[keyof typeof ContractsPageSortProperty];\n\nexport function instanceOfContractsPageSortProperty(value: any): boolean {\n for (const key in ContractsPageSortProperty) {\n if (\n Object.prototype.hasOwnProperty.call(ContractsPageSortProperty, key)\n ) {\n if (\n ContractsPageSortProperty[\n key as keyof typeof ContractsPageSortProperty\n ] === value\n ) {\n return true;\n }\n }\n }\n return false;\n}\n\nexport function ContractsPageSortPropertyFromJSON(\n json: any,\n): ContractsPageSortProperty {\n return ContractsPageSortPropertyFromJSONTyped(json, false);\n}\n\nexport function ContractsPageSortPropertyFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): ContractsPageSortProperty {\n return json as ContractsPageSortProperty;\n}\n\nexport function ContractsPageSortPropertyToJSON(\n value?: ContractsPageSortProperty | null,\n): any {\n return value as any;\n}\n\nexport function ContractsPageSortPropertyToJSONTyped(\n value: any,\n ignoreDiscriminator: boolean,\n): ContractsPageSortProperty {\n return value as ContractsPageSortProperty;\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {ContractsPageSortProperty} from './ContractsPageSortProperty';\nimport {\n ContractsPageSortPropertyFromJSON,\n ContractsPageSortPropertyFromJSONTyped,\n ContractsPageSortPropertyToJSON,\n ContractsPageSortPropertyToJSONTyped,\n} from './ContractsPageSortProperty';\nimport type {SortByDirection} from './SortByDirection';\nimport {\n SortByDirectionFromJSON,\n SortByDirectionFromJSONTyped,\n SortByDirectionToJSON,\n SortByDirectionToJSONTyped,\n} from './SortByDirection';\n\n/**\n * Sort a column of list pages by a given property\n * @export\n * @interface SortByRequestContractsPageSortProperty\n */\nexport interface SortByRequestContractsPageSortProperty {\n /**\n * Name of the column to sort for\n * @type {ContractsPageSortProperty}\n * @memberof SortByRequestContractsPageSortProperty\n */\n field: ContractsPageSortProperty;\n /**\n * sort direction\n * @type {SortByDirection}\n * @memberof SortByRequestContractsPageSortProperty\n */\n direction: SortByDirection;\n}\n\n/**\n * Check if a given object implements the SortByRequestContractsPageSortProperty interface.\n */\nexport function instanceOfSortByRequestContractsPageSortProperty(\n value: any,\n): value is SortByRequestContractsPageSortProperty {\n if (!('field' in value) || value['field'] === undefined) return false;\n if (!('direction' in value) || value['direction'] === undefined)\n return false;\n return true;\n}\n\nexport function SortByRequestContractsPageSortPropertyFromJSON(\n json: any,\n): SortByRequestContractsPageSortProperty {\n return SortByRequestContractsPageSortPropertyFromJSONTyped(json, false);\n}\n\nexport function SortByRequestContractsPageSortPropertyFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): SortByRequestContractsPageSortProperty {\n if (json == null) {\n return json;\n }\n return {\n field: ContractsPageSortPropertyFromJSON(json['field']),\n direction: SortByDirectionFromJSON(json['direction']),\n };\n}\n\nexport function SortByRequestContractsPageSortPropertyToJSON(\n json: any,\n): SortByRequestContractsPageSortProperty {\n return SortByRequestContractsPageSortPropertyToJSONTyped(json, false);\n}\n\nexport function SortByRequestContractsPageSortPropertyToJSONTyped(\n value?: SortByRequestContractsPageSortProperty | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n field: ContractsPageSortPropertyToJSON(value['field']),\n direction: SortByDirectionToJSON(value['direction']),\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {ContractTerminationStatus} from './ContractTerminationStatus';\nimport {\n ContractTerminationStatusFromJSON,\n ContractTerminationStatusFromJSONTyped,\n ContractTerminationStatusToJSON,\n ContractTerminationStatusToJSONTyped,\n} from './ContractTerminationStatus';\nimport type {PaginationRequest} from './PaginationRequest';\nimport {\n PaginationRequestFromJSON,\n PaginationRequestFromJSONTyped,\n PaginationRequestToJSON,\n PaginationRequestToJSONTyped,\n} from './PaginationRequest';\nimport type {SortByRequestContractsPageSortProperty} from './SortByRequestContractsPageSortProperty';\nimport {\n SortByRequestContractsPageSortPropertyFromJSON,\n SortByRequestContractsPageSortPropertyFromJSONTyped,\n SortByRequestContractsPageSortPropertyToJSON,\n SortByRequestContractsPageSortPropertyToJSONTyped,\n} from './SortByRequestContractsPageSortProperty';\n\n/**\n * Properties to filter and sort the contracts page\n * @export\n * @interface ContractsPageRequest\n */\nexport interface ContractsPageRequest {\n /**\n * Filter for the termination-status of the contract\n * @type {ContractTerminationStatus}\n * @memberof ContractsPageRequest\n */\n terminationStatus?: ContractTerminationStatus;\n /**\n * Pagination\n * @type {PaginationRequest}\n * @memberof ContractsPageRequest\n */\n pagination?: PaginationRequest;\n /**\n * Query for filtering. If empty, show all entries\n * @type {string}\n * @memberof ContractsPageRequest\n */\n searchText?: string;\n /**\n * Sort List by properties in order of appearance in the array.\n * @type {Array<SortByRequestContractsPageSortProperty>}\n * @memberof ContractsPageRequest\n */\n sortBy?: Array<SortByRequestContractsPageSortProperty>;\n}\n\n/**\n * Check if a given object implements the ContractsPageRequest interface.\n */\nexport function instanceOfContractsPageRequest(\n value: any,\n): value is ContractsPageRequest {\n return true;\n}\n\nexport function ContractsPageRequestFromJSON(json: any): ContractsPageRequest {\n return ContractsPageRequestFromJSONTyped(json, false);\n}\n\nexport function ContractsPageRequestFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): ContractsPageRequest {\n if (json == null) {\n return json;\n }\n return {\n terminationStatus:\n json['terminationStatus'] == null\n ? undefined\n : ContractTerminationStatusFromJSON(json['terminationStatus']),\n pagination:\n json['pagination'] == null\n ? undefined\n : PaginationRequestFromJSON(json['pagination']),\n searchText: json['searchText'] == null ? undefined : json['searchText'],\n sortBy:\n json['sortBy'] == null\n ? undefined\n : (json['sortBy'] as Array<any>).map(\n SortByRequestContractsPageSortPropertyFromJSON,\n ),\n };\n}\n\nexport function ContractsPageRequestToJSON(json: any): ContractsPageRequest {\n return ContractsPageRequestToJSONTyped(json, false);\n}\n\nexport function ContractsPageRequestToJSONTyped(\n value?: ContractsPageRequest | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n terminationStatus: ContractTerminationStatusToJSON(\n value['terminationStatus'],\n ),\n pagination: PaginationRequestToJSON(value['pagination']),\n searchText: value['searchText'],\n sortBy:\n value['sortBy'] == null\n ? undefined\n : (value['sortBy'] as Array<any>).map(\n SortByRequestContractsPageSortPropertyToJSON,\n ),\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {ContractsPageEntry} from './ContractsPageEntry';\nimport {\n ContractsPageEntryFromJSON,\n ContractsPageEntryFromJSONTyped,\n ContractsPageEntryToJSON,\n ContractsPageEntryToJSONTyped,\n} from './ContractsPageEntry';\nimport type {PaginationResult} from './PaginationResult';\nimport {\n PaginationResultFromJSON,\n PaginationResultFromJSONTyped,\n PaginationResultToJSON,\n PaginationResultToJSONTyped,\n} from './PaginationResult';\n\n/**\n * Contracts Page Result\n * @export\n * @interface ContractsPageResult\n */\nexport interface ContractsPageResult {\n /**\n * List of contract agreements\n * @type {Array<ContractsPageEntry>}\n * @memberof ContractsPageResult\n */\n contracts: Array<ContractsPageEntry>;\n /**\n * Pagination Information\n * @type {PaginationResult}\n * @memberof ContractsPageResult\n */\n pagination: PaginationResult;\n}\n\n/**\n * Check if a given object implements the ContractsPageResult interface.\n */\nexport function instanceOfContractsPageResult(\n value: any,\n): value is ContractsPageResult {\n if (!('contracts' in value) || value['contracts'] === undefined)\n return false;\n if (!('pagination' in value) || value['pagination'] === undefined)\n return false;\n return true;\n}\n\nexport function ContractsPageResultFromJSON(json: any): ContractsPageResult {\n return ContractsPageResultFromJSONTyped(json, false);\n}\n\nexport function ContractsPageResultFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): ContractsPageResult {\n if (json == null) {\n return json;\n }\n return {\n contracts: (json['contracts'] as Array<any>).map(\n ContractsPageEntryFromJSON,\n ),\n pagination: PaginationResultFromJSON(json['pagination']),\n };\n}\n\nexport function ContractsPageResultToJSON(json: any): ContractsPageResult {\n return ContractsPageResultToJSONTyped(json, false);\n}\n\nexport function ContractsPageResultToJSONTyped(\n value?: ContractsPageResult | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n contracts: (value['contracts'] as Array<any>).map(\n ContractsPageEntryToJSON,\n ),\n pagination: PaginationResultToJSON(value['pagination']),\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\n\n/**\n * Managed Identity Wallet (MIW) Config\n * @export\n * @interface DashboardCxDidConfig\n */\nexport interface DashboardCxDidConfig {\n /**\n * My DID / edc.iam.issuer.id\n * @type {string}\n * @memberof DashboardCxDidConfig\n */\n myDid: string;\n /**\n * Wallet Token Url / edc.iam.sts.oauth.token.url\n * @type {string}\n * @memberof DashboardCxDidConfig\n */\n walletTokenUrl: string;\n /**\n * Trusted VC Issuer / edc.iam.trusted-issuer.cofinity.id\n * @type {string}\n * @memberof DashboardCxDidConfig\n */\n trustedVcIssuer: string;\n /**\n * BDRS Url / tx.iam.iatp.bdrs.server.url\n * @type {string}\n * @memberof DashboardCxDidConfig\n */\n bdrsUrl: string;\n /**\n * STS DIM Url / edc.iam.sts.dim.url\n * @type {string}\n * @memberof DashboardCxDidConfig\n */\n dimUrl: string;\n}\n\n/**\n * Check if a given object implements the DashboardCxDidConfig interface.\n */\nexport function instanceOfDashboardCxDidConfig(\n value: any,\n): value is DashboardCxDidConfig {\n if (!('myDid' in value) || value['myDid'] === undefined) return false;\n if (!('walletTokenUrl' in value) || value['walletTokenUrl'] === undefined)\n return false;\n if (!('trustedVcIssuer' in value) || value['trustedVcIssuer'] === undefined)\n return false;\n if (!('bdrsUrl' in value) || value['bdrsUrl'] === undefined) return false;\n if (!('dimUrl' in value) || value['dimUrl'] === undefined) return false;\n return true;\n}\n\nexport function DashboardCxDidConfigFromJSON(json: any): DashboardCxDidConfig {\n return DashboardCxDidConfigFromJSONTyped(json, false);\n}\n\nexport function DashboardCxDidConfigFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): DashboardCxDidConfig {\n if (json == null) {\n return json;\n }\n return {\n myDid: json['myDid'],\n walletTokenUrl: json['walletTokenUrl'],\n trustedVcIssuer: json['trustedVcIssuer'],\n bdrsUrl: json['bdrsUrl'],\n dimUrl: json['dimUrl'],\n };\n}\n\nexport function DashboardCxDidConfigToJSON(json: any): DashboardCxDidConfig {\n return DashboardCxDidConfigToJSONTyped(json, false);\n}\n\nexport function DashboardCxDidConfigToJSONTyped(\n value?: DashboardCxDidConfig | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n myDid: value['myDid'],\n walletTokenUrl: value['walletTokenUrl'],\n trustedVcIssuer: value['trustedVcIssuer'],\n bdrsUrl: value['bdrsUrl'],\n dimUrl: value['dimUrl'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\n\n/**\n * DAPS Config\n * @export\n * @interface DashboardDapsConfig\n */\nexport interface DashboardDapsConfig {\n /**\n * Your Connector's DAPS Token URL\n * @type {string}\n * @memberof DashboardDapsConfig\n */\n tokenUrl: string;\n /**\n * Your Connector's DAPS JWKS URL\n * @type {string}\n * @memberof DashboardDapsConfig\n */\n jwksUrl: string;\n}\n\n/**\n * Check if a given object implements the DashboardDapsConfig interface.\n */\nexport function instanceOfDashboardDapsConfig(\n value: any,\n): value is DashboardDapsConfig {\n if (!('tokenUrl' in value) || value['tokenUrl'] === undefined) return false;\n if (!('jwksUrl' in value) || value['jwksUrl'] === undefined) return false;\n return true;\n}\n\nexport function DashboardDapsConfigFromJSON(json: any): DashboardDapsConfig {\n return DashboardDapsConfigFromJSONTyped(json, false);\n}\n\nexport function DashboardDapsConfigFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): DashboardDapsConfig {\n if (json == null) {\n return json;\n }\n return {\n tokenUrl: json['tokenUrl'],\n jwksUrl: json['jwksUrl'],\n };\n}\n\nexport function DashboardDapsConfigToJSON(json: any): DashboardDapsConfig {\n return DashboardDapsConfigToJSONTyped(json, false);\n}\n\nexport function DashboardDapsConfigToJSONTyped(\n value?: DashboardDapsConfig | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n tokenUrl: value['tokenUrl'],\n jwksUrl: value['jwksUrl'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\n\n/**\n * Number of Transfer Processes for given direction.\n * @export\n * @interface DashboardTransferAmounts\n */\nexport interface DashboardTransferAmounts {\n /**\n * Number of Transfer Processes\n * @type {number}\n * @memberof DashboardTransferAmounts\n */\n numTotal: number;\n /**\n * Number of running Transfer Processes\n * @type {number}\n * @memberof DashboardTransferAmounts\n */\n numRunning: number;\n /**\n * Number of successful Transfer Processes\n * @type {number}\n * @memberof DashboardTransferAmounts\n */\n numOk: number;\n /**\n * Number of failed Transfer Processes\n * @type {number}\n * @memberof DashboardTransferAmounts\n */\n numError: number;\n}\n\n/**\n * Check if a given object implements the DashboardTransferAmounts interface.\n */\nexport function instanceOfDashboardTransferAmounts(\n value: any,\n): value is DashboardTransferAmounts {\n if (!('numTotal' in value) || value['numTotal'] === undefined) return false;\n if (!('numRunning' in value) || value['numRunning'] === undefined)\n return false;\n if (!('numOk' in value) || value['numOk'] === undefined) return false;\n if (!('numError' in value) || value['numError'] === undefined) return false;\n return true;\n}\n\nexport function DashboardTransferAmountsFromJSON(\n json: any,\n): DashboardTransferAmounts {\n return DashboardTransferAmountsFromJSONTyped(json, false);\n}\n\nexport function DashboardTransferAmountsFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): DashboardTransferAmounts {\n if (json == null) {\n return json;\n }\n return {\n numTotal: json['numTotal'],\n numRunning: json['numRunning'],\n numOk: json['numOk'],\n numError: json['numError'],\n };\n}\n\nexport function DashboardTransferAmountsToJSON(\n json: any,\n): DashboardTransferAmounts {\n return DashboardTransferAmountsToJSONTyped(json, false);\n}\n\nexport function DashboardTransferAmountsToJSONTyped(\n value?: DashboardTransferAmounts | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n numTotal: value['numTotal'],\n numRunning: value['numRunning'],\n numOk: value['numOk'],\n numError: value['numError'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {DashboardCxDidConfig} from './DashboardCxDidConfig';\nimport {\n DashboardCxDidConfigFromJSON,\n DashboardCxDidConfigFromJSONTyped,\n DashboardCxDidConfigToJSON,\n DashboardCxDidConfigToJSONTyped,\n} from './DashboardCxDidConfig';\nimport type {DashboardDapsConfig} from './DashboardDapsConfig';\nimport {\n DashboardDapsConfigFromJSON,\n DashboardDapsConfigFromJSONTyped,\n DashboardDapsConfigToJSON,\n DashboardDapsConfigToJSONTyped,\n} from './DashboardDapsConfig';\nimport type {DashboardTransferAmounts} from './DashboardTransferAmounts';\nimport {\n DashboardTransferAmountsFromJSON,\n DashboardTransferAmountsFromJSONTyped,\n DashboardTransferAmountsToJSON,\n DashboardTransferAmountsToJSONTyped,\n} from './DashboardTransferAmounts';\n\n/**\n * Data as required by the UI's Dashboard Page\n * @export\n * @interface DashboardPage\n */\nexport interface DashboardPage {\n /**\n * Number of Assets\n * @type {number}\n * @memberof DashboardPage\n */\n numAssets: number;\n /**\n * Number of Policies\n * @type {number}\n * @memberof DashboardPage\n */\n numPolicies: number;\n /**\n * Number of Contract Definitions\n * @type {number}\n * @memberof DashboardPage\n */\n numContractDefinitions: number;\n /**\n * Number of consuming Contract Agreements\n * @type {number}\n * @memberof DashboardPage\n */\n numContractAgreementsConsuming: number;\n /**\n * Number of providing Contract Agreements\n * @type {number}\n * @memberof DashboardPage\n */\n numContractAgreementsProviding: number;\n /**\n * Consuming Transfer Process Amounts\n * @type {DashboardTransferAmounts}\n * @memberof DashboardPage\n */\n transferProcessesConsuming: DashboardTransferAmounts;\n /**\n * Providing Transfer Process Amounts\n * @type {DashboardTransferAmounts}\n * @memberof DashboardPage\n */\n transferProcessesProviding: DashboardTransferAmounts;\n /**\n * Your Connector's Management API URL for API Users\n * @type {string}\n * @memberof DashboardPage\n */\n managementApiUrlShownInDashboard: string;\n /**\n * Your Connector's Connector Endpoint\n * @type {string}\n * @memberof DashboardPage\n */\n connectorEndpoint: string;\n /**\n * Your Connector's Participant ID\n * @type {string}\n * @memberof DashboardPage\n */\n connectorParticipantId: string;\n /**\n * Your Connector's Title\n * @type {string}\n * @memberof DashboardPage\n */\n connectorTitle: string;\n /**\n * Your Connector's Description\n * @type {string}\n * @memberof DashboardPage\n */\n connectorDescription: string;\n /**\n * Your Organization Homepage\n * @type {string}\n * @memberof DashboardPage\n */\n connectorCuratorUrl: string;\n /**\n * Your Organization Name\n * @type {string}\n * @memberof DashboardPage\n */\n connectorCuratorName: string;\n /**\n * Your Connector's Maintainer's Organization Homepage\n * @type {string}\n * @memberof DashboardPage\n */\n connectorMaintainerUrl: string;\n /**\n * Your Connector's Maintainer's Organization Name\n * @type {string}\n * @memberof DashboardPage\n */\n connectorMaintainerName: string;\n /**\n * Your Connector's DAPS Configuration (if present)\n * @type {DashboardDapsConfig}\n * @memberof DashboardPage\n */\n connectorDapsConfig?: DashboardDapsConfig;\n /**\n * Your Connector's Catena-X or Sphin-X Web-DID Configuration (if present)\n * @type {DashboardCxDidConfig}\n * @memberof DashboardPage\n */\n connectorCxDidConfig?: DashboardCxDidConfig;\n}\n\n/**\n * Check if a given object implements the DashboardPage interface.\n */\nexport function instanceOfDashboardPage(value: any): value is DashboardPage {\n if (!('numAssets' in value) || value['numAssets'] === undefined)\n return false;\n if (!('numPolicies' in value) || value['numPolicies'] === undefined)\n return false;\n if (\n !('numContractDefinitions' in value) ||\n value['numContractDefinitions'] === undefined\n )\n return false;\n if (\n !('numContractAgreementsConsuming' in value) ||\n value['numContractAgreementsConsuming'] === undefined\n )\n return false;\n if (\n !('numContractAgreementsProviding' in value) ||\n value['numContractAgreementsProviding'] === undefined\n )\n return false;\n if (\n !('transferProcessesConsuming' in value) ||\n value['transferProcessesConsuming'] === undefined\n )\n return false;\n if (\n !('transferProcessesProviding' in value) ||\n value['transferProcessesProviding'] === undefined\n )\n return false;\n if (\n !('managementApiUrlShownInDashboard' in value) ||\n value['managementApiUrlShownInDashboard'] === undefined\n )\n return false;\n if (\n !('connectorEndpoint' in value) ||\n value['connectorEndpoint'] === undefined\n )\n return false;\n if (\n !('connectorParticipantId' in value) ||\n value['connectorParticipantId'] === undefined\n )\n return false;\n if (!('connectorTitle' in value) || value['connectorTitle'] === undefined)\n return false;\n if (\n !('connectorDescription' in value) ||\n value['connectorDescription'] === undefined\n )\n return false;\n if (\n !('connectorCuratorUrl' in value) ||\n value['connectorCuratorUrl'] === undefined\n )\n return false;\n if (\n !('connectorCuratorName' in value) ||\n value['connectorCuratorName'] === undefined\n )\n return false;\n if (\n !('connectorMaintainerUrl' in value) ||\n value['connectorMaintainerUrl'] === undefined\n )\n return false;\n if (\n !('connectorMaintainerName' in value) ||\n value['connectorMaintainerName'] === undefined\n )\n return false;\n return true;\n}\n\nexport function DashboardPageFromJSON(json: any): DashboardPage {\n return DashboardPageFromJSONTyped(json, false);\n}\n\nexport function DashboardPageFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): DashboardPage {\n if (json == null) {\n return json;\n }\n return {\n numAssets: json['numAssets'],\n numPolicies: json['numPolicies'],\n numContractDefinitions: json['numContractDefinitions'],\n numContractAgreementsConsuming: json['numContractAgreementsConsuming'],\n numContractAgreementsProviding: json['numContractAgreementsProviding'],\n transferProcessesConsuming: DashboardTransferAmountsFromJSON(\n json['transferProcessesConsuming'],\n ),\n transferProcessesProviding: DashboardTransferAmountsFromJSON(\n json['transferProcessesProviding'],\n ),\n managementApiUrlShownInDashboard:\n json['managementApiUrlShownInDashboard'],\n connectorEndpoint: json['connectorEndpoint'],\n connectorParticipantId: json['connectorParticipantId'],\n connectorTitle: json['connectorTitle'],\n connectorDescription: json['connectorDescription'],\n connectorCuratorUrl: json['connectorCuratorUrl'],\n connectorCuratorName: json['connectorCuratorName'],\n connectorMaintainerUrl: json['connectorMaintainerUrl'],\n connectorMaintainerName: json['connectorMaintainerName'],\n connectorDapsConfig:\n json['connectorDapsConfig'] == null\n ? undefined\n : DashboardDapsConfigFromJSON(json['connectorDapsConfig']),\n connectorCxDidConfig:\n json['connectorCxDidConfig'] == null\n ? undefined\n : DashboardCxDidConfigFromJSON(json['connectorCxDidConfig']),\n };\n}\n\nexport function DashboardPageToJSON(json: any): DashboardPage {\n return DashboardPageToJSONTyped(json, false);\n}\n\nexport function DashboardPageToJSONTyped(\n value?: DashboardPage | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n numAssets: value['numAssets'],\n numPolicies: value['numPolicies'],\n numContractDefinitions: value['numContractDefinitions'],\n numContractAgreementsConsuming: value['numContractAgreementsConsuming'],\n numContractAgreementsProviding: value['numContractAgreementsProviding'],\n transferProcessesConsuming: DashboardTransferAmountsToJSON(\n value['transferProcessesConsuming'],\n ),\n transferProcessesProviding: DashboardTransferAmountsToJSON(\n value['transferProcessesProviding'],\n ),\n managementApiUrlShownInDashboard:\n value['managementApiUrlShownInDashboard'],\n connectorEndpoint: value['connectorEndpoint'],\n connectorParticipantId: value['connectorParticipantId'],\n connectorTitle: value['connectorTitle'],\n connectorDescription: value['connectorDescription'],\n connectorCuratorUrl: value['connectorCuratorUrl'],\n connectorCuratorName: value['connectorCuratorName'],\n connectorMaintainerUrl: value['connectorMaintainerUrl'],\n connectorMaintainerName: value['connectorMaintainerName'],\n connectorDapsConfig: DashboardDapsConfigToJSON(\n value['connectorDapsConfig'],\n ),\n connectorCxDidConfig: DashboardCxDidConfigToJSON(\n value['connectorCxDidConfig'],\n ),\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n/* eslint-disable */\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n/**\n * Decides whether the data offer is to be published published:\n * * `DONT_PUBLISH` - Data offer is not published. Only an asset is created.\n * * `PUBLISH_UNRESTRICTED` - Creates the asset and publishes it using the always-true policy.\n * * `PUBLISH_RESTRICTED` - Creates the asset and publishes it with a newly created policy definition with the given policy expression\n *\n * @export\n */\nexport const DataOfferPublishType = {\n DontPublish: 'DONT_PUBLISH',\n PublishUnrestricted: 'PUBLISH_UNRESTRICTED',\n PublishRestricted: 'PUBLISH_RESTRICTED',\n} as const;\nexport type DataOfferPublishType =\n (typeof DataOfferPublishType)[keyof typeof DataOfferPublishType];\n\nexport function instanceOfDataOfferPublishType(value: any): boolean {\n for (const key in DataOfferPublishType) {\n if (Object.prototype.hasOwnProperty.call(DataOfferPublishType, key)) {\n if (\n DataOfferPublishType[\n key as keyof typeof DataOfferPublishType\n ] === value\n ) {\n return true;\n }\n }\n }\n return false;\n}\n\nexport function DataOfferPublishTypeFromJSON(json: any): DataOfferPublishType {\n return DataOfferPublishTypeFromJSONTyped(json, false);\n}\n\nexport function DataOfferPublishTypeFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): DataOfferPublishType {\n return json as DataOfferPublishType;\n}\n\nexport function DataOfferPublishTypeToJSON(\n value?: DataOfferPublishType | null,\n): any {\n return value as any;\n}\n\nexport function DataOfferPublishTypeToJSONTyped(\n value: any,\n ignoreDiscriminator: boolean,\n): DataOfferPublishType {\n return value as DataOfferPublishType;\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n/* eslint-disable */\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n/**\n * Supported Data Source Types by UiDataSource\n * @export\n */\nexport const DataSourceType = {\n HttpData: 'HTTP_DATA',\n OnRequest: 'ON_REQUEST',\n Custom: 'CUSTOM',\n} as const;\nexport type DataSourceType =\n (typeof DataSourceType)[keyof typeof DataSourceType];\n\nexport function instanceOfDataSourceType(value: any): boolean {\n for (const key in DataSourceType) {\n if (Object.prototype.hasOwnProperty.call(DataSourceType, key)) {\n if (DataSourceType[key as keyof typeof DataSourceType] === value) {\n return true;\n }\n }\n }\n return false;\n}\n\nexport function DataSourceTypeFromJSON(json: any): DataSourceType {\n return DataSourceTypeFromJSONTyped(json, false);\n}\n\nexport function DataSourceTypeFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): DataSourceType {\n return json as DataSourceType;\n}\n\nexport function DataSourceTypeToJSON(value?: DataSourceType | null): any {\n return value as any;\n}\n\nexport function DataSourceTypeToJSONTyped(\n value: any,\n ignoreDiscriminator: boolean,\n): DataSourceType {\n return value as DataSourceType;\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n/* eslint-disable */\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n/**\n * Supported HTTP Methods by UiDataSource\n * @export\n */\nexport const UiDataSourceHttpDataMethod = {\n Get: 'GET',\n Post: 'POST',\n Put: 'PUT',\n Patch: 'PATCH',\n Delete: 'DELETE',\n Options: 'OPTIONS',\n} as const;\nexport type UiDataSourceHttpDataMethod =\n (typeof UiDataSourceHttpDataMethod)[keyof typeof UiDataSourceHttpDataMethod];\n\nexport function instanceOfUiDataSourceHttpDataMethod(value: any): boolean {\n for (const key in UiDataSourceHttpDataMethod) {\n if (\n Object.prototype.hasOwnProperty.call(\n UiDataSourceHttpDataMethod,\n key,\n )\n ) {\n if (\n UiDataSourceHttpDataMethod[\n key as keyof typeof UiDataSourceHttpDataMethod\n ] === value\n ) {\n return true;\n }\n }\n }\n return false;\n}\n\nexport function UiDataSourceHttpDataMethodFromJSON(\n json: any,\n): UiDataSourceHttpDataMethod {\n return UiDataSourceHttpDataMethodFromJSONTyped(json, false);\n}\n\nexport function UiDataSourceHttpDataMethodFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): UiDataSourceHttpDataMethod {\n return json as UiDataSourceHttpDataMethod;\n}\n\nexport function UiDataSourceHttpDataMethodToJSON(\n value?: UiDataSourceHttpDataMethod | null,\n): any {\n return value as any;\n}\n\nexport function UiDataSourceHttpDataMethodToJSONTyped(\n value: any,\n ignoreDiscriminator: boolean,\n): UiDataSourceHttpDataMethod {\n return value as UiDataSourceHttpDataMethod;\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\n\n/**\n * Api Key parameters\n * @export\n * @interface UiHttpAuthApiKey\n */\nexport interface UiHttpAuthApiKey {\n /**\n * Auth Header name.\n * @type {string}\n * @memberof UiHttpAuthApiKey\n */\n headerName: string;\n /**\n * Auth Header key in the vault.\n * @type {string}\n * @memberof UiHttpAuthApiKey\n */\n vaultKey: string;\n}\n\n/**\n * Check if a given object implements the UiHttpAuthApiKey interface.\n */\nexport function instanceOfUiHttpAuthApiKey(\n value: any,\n): value is UiHttpAuthApiKey {\n if (!('headerName' in value) || value['headerName'] === undefined)\n return false;\n if (!('vaultKey' in value) || value['vaultKey'] === undefined) return false;\n return true;\n}\n\nexport function UiHttpAuthApiKeyFromJSON(json: any): UiHttpAuthApiKey {\n return UiHttpAuthApiKeyFromJSONTyped(json, false);\n}\n\nexport function UiHttpAuthApiKeyFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): UiHttpAuthApiKey {\n if (json == null) {\n return json;\n }\n return {\n headerName: json['headerName'],\n vaultKey: json['vaultKey'],\n };\n}\n\nexport function UiHttpAuthApiKeyToJSON(json: any): UiHttpAuthApiKey {\n return UiHttpAuthApiKeyToJSONTyped(json, false);\n}\n\nexport function UiHttpAuthApiKeyToJSONTyped(\n value?: UiHttpAuthApiKey | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n headerName: value['headerName'],\n vaultKey: value['vaultKey'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\n\n/**\n * Basic Auth as defined in RFC 7617. This is a wrapper for setting the header as Authorization: Basic Zm9vOnBhc3N3b3Jk. Using basic auth is not recommended in general for security reasons, but it is also not recommended because the secret will be saved in the database rather than the vault.\n * @export\n * @interface UiHttpAuthBasic\n */\nexport interface UiHttpAuthBasic {\n /**\n * The username\n * @type {string}\n * @memberof UiHttpAuthBasic\n */\n username: string;\n /**\n * The password\n * @type {string}\n * @memberof UiHttpAuthBasic\n */\n password: string;\n}\n\n/**\n * Check if a given object implements the UiHttpAuthBasic interface.\n */\nexport function instanceOfUiHttpAuthBasic(\n value: any,\n): value is UiHttpAuthBasic {\n if (!('username' in value) || value['username'] === undefined) return false;\n if (!('password' in value) || value['password'] === undefined) return false;\n return true;\n}\n\nexport function UiHttpAuthBasicFromJSON(json: any): UiHttpAuthBasic {\n return UiHttpAuthBasicFromJSONTyped(json, false);\n}\n\nexport function UiHttpAuthBasicFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): UiHttpAuthBasic {\n if (json == null) {\n return json;\n }\n return {\n username: json['username'],\n password: json['password'],\n };\n}\n\nexport function UiHttpAuthBasicToJSON(json: any): UiHttpAuthBasic {\n return UiHttpAuthBasicToJSONTyped(json, false);\n}\n\nexport function UiHttpAuthBasicToJSONTyped(\n value?: UiHttpAuthBasic | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n username: value['username'],\n password: value['password'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n/* eslint-disable */\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n/**\n * Types of OAuth2 flows supported\n * @export\n */\nexport const UiHttpOauth2AuthType = {\n SharedSecret: 'SHARED_SECRET',\n PrivateKey: 'PRIVATE_KEY',\n} as const;\nexport type UiHttpOauth2AuthType =\n (typeof UiHttpOauth2AuthType)[keyof typeof UiHttpOauth2AuthType];\n\nexport function instanceOfUiHttpOauth2AuthType(value: any): boolean {\n for (const key in UiHttpOauth2AuthType) {\n if (Object.prototype.hasOwnProperty.call(UiHttpOauth2AuthType, key)) {\n if (\n UiHttpOauth2AuthType[\n key as keyof typeof UiHttpOauth2AuthType\n ] === value\n ) {\n return true;\n }\n }\n }\n return false;\n}\n\nexport function UiHttpOauth2AuthTypeFromJSON(json: any): UiHttpOauth2AuthType {\n return UiHttpOauth2AuthTypeFromJSONTyped(json, false);\n}\n\nexport function UiHttpOauth2AuthTypeFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): UiHttpOauth2AuthType {\n return json as UiHttpOauth2AuthType;\n}\n\nexport function UiHttpOauth2AuthTypeToJSON(\n value?: UiHttpOauth2AuthType | null,\n): any {\n return value as any;\n}\n\nexport function UiHttpOauth2AuthTypeToJSONTyped(\n value: any,\n ignoreDiscriminator: boolean,\n): UiHttpOauth2AuthType {\n return value as UiHttpOauth2AuthType;\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\n\n/**\n * OAuth 2 authorization with a private key\n * @export\n * @interface UiHttpOauth2PrivateKeyAuthorization\n */\nexport interface UiHttpOauth2PrivateKeyAuthorization {\n /**\n * The vault entry name of the private key used to sign the JWT sent to the Oauth2 server.\n * @type {string}\n * @memberof UiHttpOauth2PrivateKeyAuthorization\n */\n privateKeyName: string;\n /**\n * The validity of the JWT token sent to the Oauth2 server (in seconds).\n * @type {number}\n * @memberof UiHttpOauth2PrivateKeyAuthorization\n */\n tokenValidityInSeconds: number;\n}\n\n/**\n * Check if a given object implements the UiHttpOauth2PrivateKeyAuthorization interface.\n */\nexport function instanceOfUiHttpOauth2PrivateKeyAuthorization(\n value: any,\n): value is UiHttpOauth2PrivateKeyAuthorization {\n if (!('privateKeyName' in value) || value['privateKeyName'] === undefined)\n return false;\n if (\n !('tokenValidityInSeconds' in value) ||\n value['tokenValidityInSeconds'] === undefined\n )\n return false;\n return true;\n}\n\nexport function UiHttpOauth2PrivateKeyAuthorizationFromJSON(\n json: any,\n): UiHttpOauth2PrivateKeyAuthorization {\n return UiHttpOauth2PrivateKeyAuthorizationFromJSONTyped(json, false);\n}\n\nexport function UiHttpOauth2PrivateKeyAuthorizationFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): UiHttpOauth2PrivateKeyAuthorization {\n if (json == null) {\n return json;\n }\n return {\n privateKeyName: json['privateKeyName'],\n tokenValidityInSeconds: json['tokenValidityInSeconds'],\n };\n}\n\nexport function UiHttpOauth2PrivateKeyAuthorizationToJSON(\n json: any,\n): UiHttpOauth2PrivateKeyAuthorization {\n return UiHttpOauth2PrivateKeyAuthorizationToJSONTyped(json, false);\n}\n\nexport function UiHttpOauth2PrivateKeyAuthorizationToJSONTyped(\n value?: UiHttpOauth2PrivateKeyAuthorization | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n privateKeyName: value['privateKeyName'],\n tokenValidityInSeconds: value['tokenValidityInSeconds'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\n\n/**\n * OAuth 2 shared secret authorization. This uses the OAuth2 client credentials flow.\n * @export\n * @interface UiHttpOauth2SharedSecretAuthorization\n */\nexport interface UiHttpOauth2SharedSecretAuthorization {\n /**\n * The client identifier.\n * @type {string}\n * @memberof UiHttpOauth2SharedSecretAuthorization\n */\n clientId: string;\n /**\n * The key with which the shared secret for authenticating to the Oauth2 server is stored into the Vault.\n * @type {string}\n * @memberof UiHttpOauth2SharedSecretAuthorization\n */\n clientSecretName: string;\n}\n\n/**\n * Check if a given object implements the UiHttpOauth2SharedSecretAuthorization interface.\n */\nexport function instanceOfUiHttpOauth2SharedSecretAuthorization(\n value: any,\n): value is UiHttpOauth2SharedSecretAuthorization {\n if (!('clientId' in value) || value['clientId'] === undefined) return false;\n if (\n !('clientSecretName' in value) ||\n value['clientSecretName'] === undefined\n )\n return false;\n return true;\n}\n\nexport function UiHttpOauth2SharedSecretAuthorizationFromJSON(\n json: any,\n): UiHttpOauth2SharedSecretAuthorization {\n return UiHttpOauth2SharedSecretAuthorizationFromJSONTyped(json, false);\n}\n\nexport function UiHttpOauth2SharedSecretAuthorizationFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): UiHttpOauth2SharedSecretAuthorization {\n if (json == null) {\n return json;\n }\n return {\n clientId: json['clientId'],\n clientSecretName: json['clientSecretName'],\n };\n}\n\nexport function UiHttpOauth2SharedSecretAuthorizationToJSON(\n json: any,\n): UiHttpOauth2SharedSecretAuthorization {\n return UiHttpOauth2SharedSecretAuthorizationToJSONTyped(json, false);\n}\n\nexport function UiHttpOauth2SharedSecretAuthorizationToJSONTyped(\n value?: UiHttpOauth2SharedSecretAuthorization | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n clientId: value['clientId'],\n clientSecretName: value['clientSecretName'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {UiHttpOauth2AuthType} from './UiHttpOauth2AuthType';\nimport {\n UiHttpOauth2AuthTypeFromJSON,\n UiHttpOauth2AuthTypeFromJSONTyped,\n UiHttpOauth2AuthTypeToJSON,\n UiHttpOauth2AuthTypeToJSONTyped,\n} from './UiHttpOauth2AuthType';\nimport type {UiHttpOauth2PrivateKeyAuthorization} from './UiHttpOauth2PrivateKeyAuthorization';\nimport {\n UiHttpOauth2PrivateKeyAuthorizationFromJSON,\n UiHttpOauth2PrivateKeyAuthorizationFromJSONTyped,\n UiHttpOauth2PrivateKeyAuthorizationToJSON,\n UiHttpOauth2PrivateKeyAuthorizationToJSONTyped,\n} from './UiHttpOauth2PrivateKeyAuthorization';\nimport type {UiHttpOauth2SharedSecretAuthorization} from './UiHttpOauth2SharedSecretAuthorization';\nimport {\n UiHttpOauth2SharedSecretAuthorizationFromJSON,\n UiHttpOauth2SharedSecretAuthorizationFromJSONTyped,\n UiHttpOauth2SharedSecretAuthorizationToJSON,\n UiHttpOauth2SharedSecretAuthorizationToJSONTyped,\n} from './UiHttpOauth2SharedSecretAuthorization';\n\n/**\n * OAuth 2 authentication information\n * @export\n * @interface UiHttpAuthOauth2\n */\nexport interface UiHttpAuthOauth2 {\n /**\n * The token URL where the access-token can be fetched from.\n * @type {string}\n * @memberof UiHttpAuthOauth2\n */\n tokenUrl: string;\n /**\n * (optional) The requested scope.\n * @type {string}\n * @memberof UiHttpAuthOauth2\n */\n scope?: string;\n /**\n * The type of credential.\n * @type {UiHttpOauth2AuthType}\n * @memberof UiHttpAuthOauth2\n */\n type: UiHttpOauth2AuthType;\n /**\n * Required if type=PRIVATE_KEY. For private key-based authorization.\n * @type {UiHttpOauth2PrivateKeyAuthorization}\n * @memberof UiHttpAuthOauth2\n */\n privateKey?: UiHttpOauth2PrivateKeyAuthorization;\n /**\n * Required if type=SHARED_SECRET. For shared secret-based authorization.\n * @type {UiHttpOauth2SharedSecretAuthorization}\n * @memberof UiHttpAuthOauth2\n */\n sharedSecret?: UiHttpOauth2SharedSecretAuthorization;\n}\n\n/**\n * Check if a given object implements the UiHttpAuthOauth2 interface.\n */\nexport function instanceOfUiHttpAuthOauth2(\n value: any,\n): value is UiHttpAuthOauth2 {\n if (!('tokenUrl' in value) || value['tokenUrl'] === undefined) return false;\n if (!('type' in value) || value['type'] === undefined) return false;\n return true;\n}\n\nexport function UiHttpAuthOauth2FromJSON(json: any): UiHttpAuthOauth2 {\n return UiHttpAuthOauth2FromJSONTyped(json, false);\n}\n\nexport function UiHttpAuthOauth2FromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): UiHttpAuthOauth2 {\n if (json == null) {\n return json;\n }\n return {\n tokenUrl: json['tokenUrl'],\n scope: json['scope'] == null ? undefined : json['scope'],\n type: UiHttpOauth2AuthTypeFromJSON(json['type']),\n privateKey:\n json['privateKey'] == null\n ? undefined\n : UiHttpOauth2PrivateKeyAuthorizationFromJSON(\n json['privateKey'],\n ),\n sharedSecret:\n json['sharedSecret'] == null\n ? undefined\n : UiHttpOauth2SharedSecretAuthorizationFromJSON(\n json['sharedSecret'],\n ),\n };\n}\n\nexport function UiHttpAuthOauth2ToJSON(json: any): UiHttpAuthOauth2 {\n return UiHttpAuthOauth2ToJSONTyped(json, false);\n}\n\nexport function UiHttpAuthOauth2ToJSONTyped(\n value?: UiHttpAuthOauth2 | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n tokenUrl: value['tokenUrl'],\n scope: value['scope'],\n type: UiHttpOauth2AuthTypeToJSON(value['type']),\n privateKey: UiHttpOauth2PrivateKeyAuthorizationToJSON(\n value['privateKey'],\n ),\n sharedSecret: UiHttpOauth2SharedSecretAuthorizationToJSON(\n value['sharedSecret'],\n ),\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n/* eslint-disable */\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n/**\n * Supported authentication types for HTTP Data Sinks\n * @export\n */\nexport const UiHttpAuthType = {\n Basic: 'BASIC',\n Oauth2: 'OAUTH2',\n ApiKey: 'API_KEY',\n} as const;\nexport type UiHttpAuthType =\n (typeof UiHttpAuthType)[keyof typeof UiHttpAuthType];\n\nexport function instanceOfUiHttpAuthType(value: any): boolean {\n for (const key in UiHttpAuthType) {\n if (Object.prototype.hasOwnProperty.call(UiHttpAuthType, key)) {\n if (UiHttpAuthType[key as keyof typeof UiHttpAuthType] === value) {\n return true;\n }\n }\n }\n return false;\n}\n\nexport function UiHttpAuthTypeFromJSON(json: any): UiHttpAuthType {\n return UiHttpAuthTypeFromJSONTyped(json, false);\n}\n\nexport function UiHttpAuthTypeFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): UiHttpAuthType {\n return json as UiHttpAuthType;\n}\n\nexport function UiHttpAuthTypeToJSON(value?: UiHttpAuthType | null): any {\n return value as any;\n}\n\nexport function UiHttpAuthTypeToJSONTyped(\n value: any,\n ignoreDiscriminator: boolean,\n): UiHttpAuthType {\n return value as UiHttpAuthType;\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {UiHttpAuthApiKey} from './UiHttpAuthApiKey';\nimport {\n UiHttpAuthApiKeyFromJSON,\n UiHttpAuthApiKeyFromJSONTyped,\n UiHttpAuthApiKeyToJSON,\n UiHttpAuthApiKeyToJSONTyped,\n} from './UiHttpAuthApiKey';\nimport type {UiHttpAuthBasic} from './UiHttpAuthBasic';\nimport {\n UiHttpAuthBasicFromJSON,\n UiHttpAuthBasicFromJSONTyped,\n UiHttpAuthBasicToJSON,\n UiHttpAuthBasicToJSONTyped,\n} from './UiHttpAuthBasic';\nimport type {UiHttpAuthOauth2} from './UiHttpAuthOauth2';\nimport {\n UiHttpAuthOauth2FromJSON,\n UiHttpAuthOauth2FromJSONTyped,\n UiHttpAuthOauth2ToJSON,\n UiHttpAuthOauth2ToJSONTyped,\n} from './UiHttpAuthOauth2';\nimport type {UiHttpAuthType} from './UiHttpAuthType';\nimport {\n UiHttpAuthTypeFromJSON,\n UiHttpAuthTypeFromJSONTyped,\n UiHttpAuthTypeToJSON,\n UiHttpAuthTypeToJSONTyped,\n} from './UiHttpAuthType';\n\n/**\n * Available authentication methods for http data sources. Use only one.\n * @export\n * @interface UiHttpAuth\n */\nexport interface UiHttpAuth {\n /**\n * The type of authentication.\n * @type {UiHttpAuthType}\n * @memberof UiHttpAuth\n */\n type: UiHttpAuthType;\n /**\n * Required when type=BASIC. To use basic authentication.\n * @type {UiHttpAuthBasic}\n * @memberof UiHttpAuth\n */\n basic?: UiHttpAuthBasic;\n /**\n * Required when type=API_KEY. To use api key authentication with a secret from the vault.\n * @type {UiHttpAuthApiKey}\n * @memberof UiHttpAuth\n */\n apiKey?: UiHttpAuthApiKey;\n /**\n * Required when type=OAUTH. To use oauth authentication.\n * @type {UiHttpAuthOauth2}\n * @memberof UiHttpAuth\n */\n oauth?: UiHttpAuthOauth2;\n}\n\n/**\n * Check if a given object implements the UiHttpAuth interface.\n */\nexport function instanceOfUiHttpAuth(value: any): value is UiHttpAuth {\n if (!('type' in value) || value['type'] === undefined) return false;\n return true;\n}\n\nexport function UiHttpAuthFromJSON(json: any): UiHttpAuth {\n return UiHttpAuthFromJSONTyped(json, false);\n}\n\nexport function UiHttpAuthFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): UiHttpAuth {\n if (json == null) {\n return json;\n }\n return {\n type: UiHttpAuthTypeFromJSON(json['type']),\n basic:\n json['basic'] == null\n ? undefined\n : UiHttpAuthBasicFromJSON(json['basic']),\n apiKey:\n json['apiKey'] == null\n ? undefined\n : UiHttpAuthApiKeyFromJSON(json['apiKey']),\n oauth:\n json['oauth'] == null\n ? undefined\n : UiHttpAuthOauth2FromJSON(json['oauth']),\n };\n}\n\nexport function UiHttpAuthToJSON(json: any): UiHttpAuth {\n return UiHttpAuthToJSONTyped(json, false);\n}\n\nexport function UiHttpAuthToJSONTyped(\n value?: UiHttpAuth | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n type: UiHttpAuthTypeToJSON(value['type']),\n basic: UiHttpAuthBasicToJSON(value['basic']),\n apiKey: UiHttpAuthApiKeyToJSON(value['apiKey']),\n oauth: UiHttpAuthOauth2ToJSON(value['oauth']),\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {UiDataSourceHttpDataMethod} from './UiDataSourceHttpDataMethod';\nimport {\n UiDataSourceHttpDataMethodFromJSON,\n UiDataSourceHttpDataMethodFromJSONTyped,\n UiDataSourceHttpDataMethodToJSON,\n UiDataSourceHttpDataMethodToJSONTyped,\n} from './UiDataSourceHttpDataMethod';\nimport type {UiHttpAuth} from './UiHttpAuth';\nimport {\n UiHttpAuthFromJSON,\n UiHttpAuthFromJSONTyped,\n UiHttpAuthToJSON,\n UiHttpAuthToJSONTyped,\n} from './UiHttpAuth';\n\n/**\n * HTTP_DATA type Data Source.\n * @export\n * @interface UiDataSourceHttpData\n */\nexport interface UiDataSourceHttpData {\n /**\n * HTTP Request Method\n * @type {UiDataSourceHttpDataMethod}\n * @memberof UiDataSourceHttpData\n */\n method?: UiDataSourceHttpDataMethod;\n /**\n * HTTP Request URL. If parameterized, additional pathParams will be joined onto existing one.\n * @type {string}\n * @memberof UiDataSourceHttpData\n */\n baseUrl: string;\n /**\n * HTTP Request Query Params / Query String.\n * @type {string}\n * @memberof UiDataSourceHttpData\n */\n queryString?: string;\n /**\n * The authentication method.\n * @type {UiHttpAuth}\n * @memberof UiDataSourceHttpData\n */\n auth?: UiHttpAuth;\n /**\n * HTTP Request Headers. HTTP Header Parameterization is not available.\n * @type {{ [key: string]: string; }}\n * @memberof UiDataSourceHttpData\n */\n headers?: {[key: string]: string};\n /**\n * Enable Method Parameterization. This forces consumers to provide a method, otherwise the transfer will fail.\n * @type {boolean}\n * @memberof UiDataSourceHttpData\n */\n enableMethodParameterization?: boolean;\n /**\n * Enable Path Parameterization.\n * @type {boolean}\n * @memberof UiDataSourceHttpData\n */\n enablePathParameterization?: boolean;\n /**\n * Enable Query Parameterization. Any additionally provided queryString will be merged with the existing one.\n * @type {boolean}\n * @memberof UiDataSourceHttpData\n */\n enableQueryParameterization?: boolean;\n /**\n * Enable Body Parameterization. Forces the provider to provide both a request body and a content type. Only Methods POST, PUT and PATCH allow request bodies.\n * @type {boolean}\n * @memberof UiDataSourceHttpData\n */\n enableBodyParameterization?: boolean;\n}\n\n/**\n * Check if a given object implements the UiDataSourceHttpData interface.\n */\nexport function instanceOfUiDataSourceHttpData(\n value: any,\n): value is UiDataSourceHttpData {\n if (!('baseUrl' in value) || value['baseUrl'] === undefined) return false;\n return true;\n}\n\nexport function UiDataSourceHttpDataFromJSON(json: any): UiDataSourceHttpData {\n return UiDataSourceHttpDataFromJSONTyped(json, false);\n}\n\nexport function UiDataSourceHttpDataFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): UiDataSourceHttpData {\n if (json == null) {\n return json;\n }\n return {\n method:\n json['method'] == null\n ? undefined\n : UiDataSourceHttpDataMethodFromJSON(json['method']),\n baseUrl: json['baseUrl'],\n queryString:\n json['queryString'] == null ? undefined : json['queryString'],\n auth:\n json['auth'] == null ? undefined : UiHttpAuthFromJSON(json['auth']),\n headers: json['headers'] == null ? undefined : json['headers'],\n enableMethodParameterization:\n json['enableMethodParameterization'] == null\n ? undefined\n : json['enableMethodParameterization'],\n enablePathParameterization:\n json['enablePathParameterization'] == null\n ? undefined\n : json['enablePathParameterization'],\n enableQueryParameterization:\n json['enableQueryParameterization'] == null\n ? undefined\n : json['enableQueryParameterization'],\n enableBodyParameterization:\n json['enableBodyParameterization'] == null\n ? undefined\n : json['enableBodyParameterization'],\n };\n}\n\nexport function UiDataSourceHttpDataToJSON(json: any): UiDataSourceHttpData {\n return UiDataSourceHttpDataToJSONTyped(json, false);\n}\n\nexport function UiDataSourceHttpDataToJSONTyped(\n value?: UiDataSourceHttpData | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n method: UiDataSourceHttpDataMethodToJSON(value['method']),\n baseUrl: value['baseUrl'],\n queryString: value['queryString'],\n auth: UiHttpAuthToJSON(value['auth']),\n headers: value['headers'],\n enableMethodParameterization: value['enableMethodParameterization'],\n enablePathParameterization: value['enablePathParameterization'],\n enableQueryParameterization: value['enableQueryParameterization'],\n enableBodyParameterization: value['enableBodyParameterization'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\n\n/**\n * ON_REQUEST type Data Source.\n * @export\n * @interface UiDataSourceOnRequest\n */\nexport interface UiDataSourceOnRequest {\n /**\n * Contact E-Mail address\n * @type {string}\n * @memberof UiDataSourceOnRequest\n */\n contactEmail: string;\n /**\n * Contact Preferred E-Mail Subject\n * @type {string}\n * @memberof UiDataSourceOnRequest\n */\n contactPreferredEmailSubject: string;\n}\n\n/**\n * Check if a given object implements the UiDataSourceOnRequest interface.\n */\nexport function instanceOfUiDataSourceOnRequest(\n value: any,\n): value is UiDataSourceOnRequest {\n if (!('contactEmail' in value) || value['contactEmail'] === undefined)\n return false;\n if (\n !('contactPreferredEmailSubject' in value) ||\n value['contactPreferredEmailSubject'] === undefined\n )\n return false;\n return true;\n}\n\nexport function UiDataSourceOnRequestFromJSON(\n json: any,\n): UiDataSourceOnRequest {\n return UiDataSourceOnRequestFromJSONTyped(json, false);\n}\n\nexport function UiDataSourceOnRequestFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): UiDataSourceOnRequest {\n if (json == null) {\n return json;\n }\n return {\n contactEmail: json['contactEmail'],\n contactPreferredEmailSubject: json['contactPreferredEmailSubject'],\n };\n}\n\nexport function UiDataSourceOnRequestToJSON(json: any): UiDataSourceOnRequest {\n return UiDataSourceOnRequestToJSONTyped(json, false);\n}\n\nexport function UiDataSourceOnRequestToJSONTyped(\n value?: UiDataSourceOnRequest | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n contactEmail: value['contactEmail'],\n contactPreferredEmailSubject: value['contactPreferredEmailSubject'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {DataSourceType} from './DataSourceType';\nimport {\n DataSourceTypeFromJSON,\n DataSourceTypeFromJSONTyped,\n DataSourceTypeToJSON,\n DataSourceTypeToJSONTyped,\n} from './DataSourceType';\nimport type {UiDataSourceHttpData} from './UiDataSourceHttpData';\nimport {\n UiDataSourceHttpDataFromJSON,\n UiDataSourceHttpDataFromJSONTyped,\n UiDataSourceHttpDataToJSON,\n UiDataSourceHttpDataToJSONTyped,\n} from './UiDataSourceHttpData';\nimport type {UiDataSourceOnRequest} from './UiDataSourceOnRequest';\nimport {\n UiDataSourceOnRequestFromJSON,\n UiDataSourceOnRequestFromJSONTyped,\n UiDataSourceOnRequestToJSON,\n UiDataSourceOnRequestToJSONTyped,\n} from './UiDataSourceOnRequest';\n\n/**\n * Type-safe data source as supported by the sovity product landscape. Contains extension points for using custom data address properties.\n * @export\n * @interface UiDataSource\n */\nexport interface UiDataSource {\n /**\n * Data Address Type.\n * @type {DataSourceType}\n * @memberof UiDataSource\n */\n type: DataSourceType;\n /**\n * Only for type HTTP_DATA\n * @type {UiDataSourceHttpData}\n * @memberof UiDataSource\n */\n httpData?: UiDataSourceHttpData;\n /**\n * Only for type ON_REQUEST\n * @type {UiDataSourceOnRequest}\n * @memberof UiDataSource\n */\n onRequest?: UiDataSourceOnRequest;\n /**\n * For all types. Custom Data Address Properties.\n * @type {{ [key: string]: string; }}\n * @memberof UiDataSource\n */\n customProperties?: {[key: string]: string};\n}\n\n/**\n * Check if a given object implements the UiDataSource interface.\n */\nexport function instanceOfUiDataSource(value: any): value is UiDataSource {\n if (!('type' in value) || value['type'] === undefined) return false;\n return true;\n}\n\nexport function UiDataSourceFromJSON(json: any): UiDataSource {\n return UiDataSourceFromJSONTyped(json, false);\n}\n\nexport function UiDataSourceFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): UiDataSource {\n if (json == null) {\n return json;\n }\n return {\n type: DataSourceTypeFromJSON(json['type']),\n httpData:\n json['httpData'] == null\n ? undefined\n : UiDataSourceHttpDataFromJSON(json['httpData']),\n onRequest:\n json['onRequest'] == null\n ? undefined\n : UiDataSourceOnRequestFromJSON(json['onRequest']),\n customProperties:\n json['customProperties'] == null\n ? undefined\n : json['customProperties'],\n };\n}\n\nexport function UiDataSourceToJSON(json: any): UiDataSource {\n return UiDataSourceToJSONTyped(json, false);\n}\n\nexport function UiDataSourceToJSONTyped(\n value?: UiDataSource | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n type: DataSourceTypeToJSON(value['type']),\n httpData: UiDataSourceHttpDataToJSON(value['httpData']),\n onRequest: UiDataSourceOnRequestToJSON(value['onRequest']),\n customProperties: value['customProperties'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {UiAssetExtForSphinx} from './UiAssetExtForSphinx';\nimport {\n UiAssetExtForSphinxFromJSON,\n UiAssetExtForSphinxFromJSONTyped,\n UiAssetExtForSphinxToJSON,\n UiAssetExtForSphinxToJSONTyped,\n} from './UiAssetExtForSphinx';\nimport type {UiDataSource} from './UiDataSource';\nimport {\n UiDataSourceFromJSON,\n UiDataSourceFromJSONTyped,\n UiDataSourceToJSON,\n UiDataSourceToJSONTyped,\n} from './UiDataSource';\n\n/**\n * Type-safe data offer metadata for creating an asset as supported by the sovity product landscape. Contains extension points.\n * @export\n * @interface UiAssetCreateRequest\n */\nexport interface UiAssetCreateRequest {\n /**\n * Data Source\n * @type {UiDataSource}\n * @memberof UiAssetCreateRequest\n */\n dataSource: UiDataSource;\n /**\n * Asset Id\n * @type {string}\n * @memberof UiAssetCreateRequest\n */\n id: string;\n /**\n * Asset Title\n * @type {string}\n * @memberof UiAssetCreateRequest\n */\n title?: string;\n /**\n * Asset Language\n * @type {string}\n * @memberof UiAssetCreateRequest\n */\n language?: string;\n /**\n * Asset Description\n * @type {string}\n * @memberof UiAssetCreateRequest\n */\n description?: string;\n /**\n * Asset Homepage\n * @type {string}\n * @memberof UiAssetCreateRequest\n */\n publisherHomepage?: string;\n /**\n * License URL\n * @type {string}\n * @memberof UiAssetCreateRequest\n */\n licenseUrl?: string;\n /**\n * Version\n * @type {string}\n * @memberof UiAssetCreateRequest\n */\n version?: string;\n /**\n * Asset Keywords\n * @type {Array<string>}\n * @memberof UiAssetCreateRequest\n */\n keywords?: Array<string>;\n /**\n * Asset MediaType\n * @type {string}\n * @memberof UiAssetCreateRequest\n */\n mediaType?: string;\n /**\n * Landing Page URL\n * @type {string}\n * @memberof UiAssetCreateRequest\n */\n landingPageUrl?: string;\n /**\n * Data Model\n * @type {string}\n * @memberof UiAssetCreateRequest\n */\n dataModel?: string;\n /**\n * The sovereign is distinct from the publisher by being the legal owner of the data.\n * @type {string}\n * @memberof UiAssetCreateRequest\n */\n sovereignLegalName?: string;\n /**\n * Data sample URLs\n * @type {Array<string>}\n * @memberof UiAssetCreateRequest\n */\n dataSampleUrls?: Array<string>;\n /**\n * Reference file/schema URLs\n * @type {Array<string>}\n * @memberof UiAssetCreateRequest\n */\n referenceFileUrls?: Array<string>;\n /**\n * Additional information on reference files/schemas\n * @type {string}\n * @memberof UiAssetCreateRequest\n */\n referenceFilesDescription?: string;\n /**\n * Instructions for use that are not legally relevant e.g. information on how to cite the dataset in papers\n * @type {string}\n * @memberof UiAssetCreateRequest\n */\n conditionsForUse?: string;\n /**\n * Data update frequency\n * @type {string}\n * @memberof UiAssetCreateRequest\n */\n dataUpdateFrequency?: string;\n /**\n * Temporal coverage start date\n * @type {Date}\n * @memberof UiAssetCreateRequest\n */\n temporalCoverageFrom?: Date;\n /**\n * Temporal coverage end date (inclusive)\n * @type {Date}\n * @memberof UiAssetCreateRequest\n */\n temporalCoverageToInclusive?: Date;\n /**\n * sphin-x dataspace specific asset metadata fields\n * @type {UiAssetExtForSphinx}\n * @memberof UiAssetCreateRequest\n */\n sphinxFields?: UiAssetExtForSphinx;\n /**\n * Contains serialized custom properties in the JSON format.\n * @type {string}\n * @memberof UiAssetCreateRequest\n */\n customJsonAsString?: string;\n /**\n * Contains serialized custom properties in the JSON LD format. Contrary to the customJsonAsString field, this string must represent a JSON LD object and will be affected by JSON LD compaction and expansion. Due to a technical limitation, the properties can't be booleans.\n * @type {string}\n * @memberof UiAssetCreateRequest\n */\n customJsonLdAsString?: string;\n /**\n * Same as customJsonAsString but the data will be stored in the private properties.\n * @type {string}\n * @memberof UiAssetCreateRequest\n */\n privateCustomJsonAsString?: string;\n /**\n * Same as customJsonLdAsString but the data will be stored in the private properties. The same limitations apply.\n * @type {string}\n * @memberof UiAssetCreateRequest\n */\n privateCustomJsonLdAsString?: string;\n}\n\n/**\n * Check if a given object implements the UiAssetCreateRequest interface.\n */\nexport function instanceOfUiAssetCreateRequest(\n value: any,\n): value is UiAssetCreateRequest {\n if (!('dataSource' in value) || value['dataSource'] === undefined)\n return false;\n if (!('id' in value) || value['id'] === undefined) return false;\n return true;\n}\n\nexport function UiAssetCreateRequestFromJSON(json: any): UiAssetCreateRequest {\n return UiAssetCreateRequestFromJSONTyped(json, false);\n}\n\nexport function UiAssetCreateRequestFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): UiAssetCreateRequest {\n if (json == null) {\n return json;\n }\n return {\n dataSource: UiDataSourceFromJSON(json['dataSource']),\n id: json['id'],\n title: json['title'] == null ? undefined : json['title'],\n language: json['language'] == null ? undefined : json['language'],\n description:\n json['description'] == null ? undefined : json['description'],\n publisherHomepage:\n json['publisherHomepage'] == null\n ? undefined\n : json['publisherHomepage'],\n licenseUrl: json['licenseUrl'] == null ? undefined : json['licenseUrl'],\n version: json['version'] == null ? undefined : json['version'],\n keywords: json['keywords'] == null ? undefined : json['keywords'],\n mediaType: json['mediaType'] == null ? undefined : json['mediaType'],\n landingPageUrl:\n json['landingPageUrl'] == null ? undefined : json['landingPageUrl'],\n dataModel: json['dataModel'] == null ? undefined : json['dataModel'],\n sovereignLegalName:\n json['sovereignLegalName'] == null\n ? undefined\n : json['sovereignLegalName'],\n dataSampleUrls:\n json['dataSampleUrls'] == null ? undefined : json['dataSampleUrls'],\n referenceFileUrls:\n json['referenceFileUrls'] == null\n ? undefined\n : json['referenceFileUrls'],\n referenceFilesDescription:\n json['referenceFilesDescription'] == null\n ? undefined\n : json['referenceFilesDescription'],\n conditionsForUse:\n json['conditionsForUse'] == null\n ? undefined\n : json['conditionsForUse'],\n dataUpdateFrequency:\n json['dataUpdateFrequency'] == null\n ? undefined\n : json['dataUpdateFrequency'],\n temporalCoverageFrom:\n json['temporalCoverageFrom'] == null\n ? undefined\n : new Date(json['temporalCoverageFrom']),\n temporalCoverageToInclusive:\n json['temporalCoverageToInclusive'] == null\n ? undefined\n : new Date(json['temporalCoverageToInclusive']),\n sphinxFields:\n json['sphinxFields'] == null\n ? undefined\n : UiAssetExtForSphinxFromJSON(json['sphinxFields']),\n customJsonAsString:\n json['customJsonAsString'] == null\n ? undefined\n : json['customJsonAsString'],\n customJsonLdAsString:\n json['customJsonLdAsString'] == null\n ? undefined\n : json['customJsonLdAsString'],\n privateCustomJsonAsString:\n json['privateCustomJsonAsString'] == null\n ? undefined\n : json['privateCustomJsonAsString'],\n privateCustomJsonLdAsString:\n json['privateCustomJsonLdAsString'] == null\n ? undefined\n : json['privateCustomJsonLdAsString'],\n };\n}\n\nexport function UiAssetCreateRequestToJSON(json: any): UiAssetCreateRequest {\n return UiAssetCreateRequestToJSONTyped(json, false);\n}\n\nexport function UiAssetCreateRequestToJSONTyped(\n value?: UiAssetCreateRequest | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n dataSource: UiDataSourceToJSON(value['dataSource']),\n id: value['id'],\n title: value['title'],\n language: value['language'],\n description: value['description'],\n publisherHomepage: value['publisherHomepage'],\n licenseUrl: value['licenseUrl'],\n version: value['version'],\n keywords: value['keywords'],\n mediaType: value['mediaType'],\n landingPageUrl: value['landingPageUrl'],\n dataModel: value['dataModel'],\n sovereignLegalName: value['sovereignLegalName'],\n dataSampleUrls: value['dataSampleUrls'],\n referenceFileUrls: value['referenceFileUrls'],\n referenceFilesDescription: value['referenceFilesDescription'],\n conditionsForUse: value['conditionsForUse'],\n dataUpdateFrequency: value['dataUpdateFrequency'],\n temporalCoverageFrom:\n value['temporalCoverageFrom'] == null\n ? undefined\n : value['temporalCoverageFrom'].toISOString().substring(0, 10),\n temporalCoverageToInclusive:\n value['temporalCoverageToInclusive'] == null\n ? undefined\n : value['temporalCoverageToInclusive']\n .toISOString()\n .substring(0, 10),\n sphinxFields: UiAssetExtForSphinxToJSON(value['sphinxFields']),\n customJsonAsString: value['customJsonAsString'],\n customJsonLdAsString: value['customJsonLdAsString'],\n privateCustomJsonAsString: value['privateCustomJsonAsString'],\n privateCustomJsonLdAsString: value['privateCustomJsonLdAsString'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {DataOfferPublishType} from './DataOfferPublishType';\nimport {\n DataOfferPublishTypeFromJSON,\n DataOfferPublishTypeFromJSONTyped,\n DataOfferPublishTypeToJSON,\n DataOfferPublishTypeToJSONTyped,\n} from './DataOfferPublishType';\nimport type {UiAssetCreateRequest} from './UiAssetCreateRequest';\nimport {\n UiAssetCreateRequestFromJSON,\n UiAssetCreateRequestFromJSONTyped,\n UiAssetCreateRequestToJSON,\n UiAssetCreateRequestToJSONTyped,\n} from './UiAssetCreateRequest';\nimport type {UiPolicyExpression} from './UiPolicyExpression';\nimport {\n UiPolicyExpressionFromJSON,\n UiPolicyExpressionFromJSONTyped,\n UiPolicyExpressionToJSON,\n UiPolicyExpressionToJSONTyped,\n} from './UiPolicyExpression';\n\n/**\n * Request to create a data offer\n * @export\n * @interface DataOfferCreateRequest\n */\nexport interface DataOfferCreateRequest {\n /**\n * The asset to create\n * @type {UiAssetCreateRequest}\n * @memberof DataOfferCreateRequest\n */\n asset: UiAssetCreateRequest;\n /**\n *\n * @type {DataOfferPublishType}\n * @memberof DataOfferCreateRequest\n */\n publishType: DataOfferPublishType;\n /**\n * Policy Expression. Only relevant if policyType is 'RESTRICTED'\n * @type {UiPolicyExpression}\n * @memberof DataOfferCreateRequest\n */\n policyExpression?: UiPolicyExpression;\n}\n\n/**\n * Check if a given object implements the DataOfferCreateRequest interface.\n */\nexport function instanceOfDataOfferCreateRequest(\n value: any,\n): value is DataOfferCreateRequest {\n if (!('asset' in value) || value['asset'] === undefined) return false;\n if (!('publishType' in value) || value['publishType'] === undefined)\n return false;\n return true;\n}\n\nexport function DataOfferCreateRequestFromJSON(\n json: any,\n): DataOfferCreateRequest {\n return DataOfferCreateRequestFromJSONTyped(json, false);\n}\n\nexport function DataOfferCreateRequestFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): DataOfferCreateRequest {\n if (json == null) {\n return json;\n }\n return {\n asset: UiAssetCreateRequestFromJSON(json['asset']),\n publishType: DataOfferPublishTypeFromJSON(json['publishType']),\n policyExpression:\n json['policyExpression'] == null\n ? undefined\n : UiPolicyExpressionFromJSON(json['policyExpression']),\n };\n}\n\nexport function DataOfferCreateRequestToJSON(\n json: any,\n): DataOfferCreateRequest {\n return DataOfferCreateRequestToJSONTyped(json, false);\n}\n\nexport function DataOfferCreateRequestToJSONTyped(\n value?: DataOfferCreateRequest | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n asset: UiAssetCreateRequestToJSON(value['asset']),\n publishType: DataOfferPublishTypeToJSON(value['publishType']),\n policyExpression: UiPolicyExpressionToJSON(value['policyExpression']),\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\n\n/**\n * Issued for a single transfer, calling the given endpoint allows you to directly interact with the data source. Depending on the asset you can pass data to the data source, provide query params or append a custom sub-path.\n * @export\n * @interface EdrDto\n */\nexport interface EdrDto {\n /**\n * Base URL\n * @type {string}\n * @memberof EdrDto\n */\n baseUrl: string;\n /**\n * Value for the 'Authorization' header.\n * @type {string}\n * @memberof EdrDto\n */\n authorizationHeaderValue: string;\n /**\n * Expiration date of the EDR token or null, if EDR never expires. After expiration you must re-fetch the EDR.\n * @type {Date}\n * @memberof EdrDto\n */\n expiresAt?: Date;\n}\n\n/**\n * Check if a given object implements the EdrDto interface.\n */\nexport function instanceOfEdrDto(value: any): value is EdrDto {\n if (!('baseUrl' in value) || value['baseUrl'] === undefined) return false;\n if (\n !('authorizationHeaderValue' in value) ||\n value['authorizationHeaderValue'] === undefined\n )\n return false;\n return true;\n}\n\nexport function EdrDtoFromJSON(json: any): EdrDto {\n return EdrDtoFromJSONTyped(json, false);\n}\n\nexport function EdrDtoFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): EdrDto {\n if (json == null) {\n return json;\n }\n return {\n baseUrl: json['baseUrl'],\n authorizationHeaderValue: json['authorizationHeaderValue'],\n expiresAt:\n json['expiresAt'] == null ? undefined : new Date(json['expiresAt']),\n };\n}\n\nexport function EdrDtoToJSON(json: any): EdrDto {\n return EdrDtoToJSONTyped(json, false);\n}\n\nexport function EdrDtoToJSONTyped(\n value?: EdrDto | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n baseUrl: value['baseUrl'],\n authorizationHeaderValue: value['authorizationHeaderValue'],\n expiresAt:\n value['expiresAt'] == null\n ? undefined\n : value['expiresAt'].toISOString(),\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\n\n/**\n * Object indicates whether an ID for the given object type is already taken or not\n * @export\n * @interface IdAvailabilityResponse\n */\nexport interface IdAvailabilityResponse {\n /**\n * ID\n * @type {string}\n * @memberof IdAvailabilityResponse\n */\n id: string;\n /**\n *\n * @type {boolean}\n * @memberof IdAvailabilityResponse\n */\n available?: boolean;\n}\n\n/**\n * Check if a given object implements the IdAvailabilityResponse interface.\n */\nexport function instanceOfIdAvailabilityResponse(\n value: any,\n): value is IdAvailabilityResponse {\n if (!('id' in value) || value['id'] === undefined) return false;\n return true;\n}\n\nexport function IdAvailabilityResponseFromJSON(\n json: any,\n): IdAvailabilityResponse {\n return IdAvailabilityResponseFromJSONTyped(json, false);\n}\n\nexport function IdAvailabilityResponseFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): IdAvailabilityResponse {\n if (json == null) {\n return json;\n }\n return {\n id: json['id'],\n available: json['available'] == null ? undefined : json['available'],\n };\n}\n\nexport function IdAvailabilityResponseToJSON(\n json: any,\n): IdAvailabilityResponse {\n return IdAvailabilityResponseToJSONTyped(json, false);\n}\n\nexport function IdAvailabilityResponseToJSONTyped(\n value?: IdAvailabilityResponse | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n id: value['id'],\n available: value['available'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\n\n/**\n * Marks the operation as successful\n * @export\n * @interface IdResponseDto\n */\nexport interface IdResponseDto {\n /**\n * ID\n * @type {string}\n * @memberof IdResponseDto\n */\n id: string;\n /**\n * Change Date\n * @type {Date}\n * @memberof IdResponseDto\n */\n lastUpdatedDate: Date;\n}\n\n/**\n * Check if a given object implements the IdResponseDto interface.\n */\nexport function instanceOfIdResponseDto(value: any): value is IdResponseDto {\n if (!('id' in value) || value['id'] === undefined) return false;\n if (!('lastUpdatedDate' in value) || value['lastUpdatedDate'] === undefined)\n return false;\n return true;\n}\n\nexport function IdResponseDtoFromJSON(json: any): IdResponseDto {\n return IdResponseDtoFromJSONTyped(json, false);\n}\n\nexport function IdResponseDtoFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): IdResponseDto {\n if (json == null) {\n return json;\n }\n return {\n id: json['id'],\n lastUpdatedDate: new Date(json['lastUpdatedDate']),\n };\n}\n\nexport function IdResponseDtoToJSON(json: any): IdResponseDto {\n return IdResponseDtoToJSONTyped(json, false);\n}\n\nexport function IdResponseDtoToJSONTyped(\n value?: IdResponseDto | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n id: value['id'],\n lastUpdatedDate: value['lastUpdatedDate'].toISOString(),\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\n\n/**\n * Required data for starting a Contract Agreement's Transfer Process\n * @export\n * @interface InitiateCustomTransferRequest\n */\nexport interface InitiateCustomTransferRequest {\n /**\n * Contract Agreement ID\n * @type {string}\n * @memberof InitiateCustomTransferRequest\n */\n contractAgreementId: string;\n /**\n * Partial TransferProcessRequestJsonLd JSON-LD. Fields participantId, connectorEndpoint, assetId and contractId can be omitted, they will be overridden with information from the contract.\n * @type {string}\n * @memberof InitiateCustomTransferRequest\n */\n transferProcessRequestJsonLd: string;\n}\n\n/**\n * Check if a given object implements the InitiateCustomTransferRequest interface.\n */\nexport function instanceOfInitiateCustomTransferRequest(\n value: any,\n): value is InitiateCustomTransferRequest {\n if (\n !('contractAgreementId' in value) ||\n value['contractAgreementId'] === undefined\n )\n return false;\n if (\n !('transferProcessRequestJsonLd' in value) ||\n value['transferProcessRequestJsonLd'] === undefined\n )\n return false;\n return true;\n}\n\nexport function InitiateCustomTransferRequestFromJSON(\n json: any,\n): InitiateCustomTransferRequest {\n return InitiateCustomTransferRequestFromJSONTyped(json, false);\n}\n\nexport function InitiateCustomTransferRequestFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): InitiateCustomTransferRequest {\n if (json == null) {\n return json;\n }\n return {\n contractAgreementId: json['contractAgreementId'],\n transferProcessRequestJsonLd: json['transferProcessRequestJsonLd'],\n };\n}\n\nexport function InitiateCustomTransferRequestToJSON(\n json: any,\n): InitiateCustomTransferRequest {\n return InitiateCustomTransferRequestToJSONTyped(json, false);\n}\n\nexport function InitiateCustomTransferRequestToJSONTyped(\n value?: InitiateCustomTransferRequest | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n contractAgreementId: value['contractAgreementId'],\n transferProcessRequestJsonLd: value['transferProcessRequestJsonLd'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\n\n/**\n * For type PARAMS_ONLY: Required data for starting a Transfer Process\n * @export\n * @interface InitiateTransferRequest\n */\nexport interface InitiateTransferRequest {\n /**\n * Contract Agreement ID\n * @type {string}\n * @memberof InitiateTransferRequest\n */\n contractAgreementId: string;\n /**\n * Transfer Type. Used to select a compatible DataPlane. Examples are 'HttpData-PUSH', 'HttpData-PULL'. Not to be confused with the 'type' of the data source, or the 'type' of the data sink found in the 'properties'\n * @type {string}\n * @memberof InitiateTransferRequest\n */\n transferType: string;\n /**\n * Data Sink / Data Address\n * @type {{ [key: string]: string; }}\n * @memberof InitiateTransferRequest\n */\n dataSinkProperties: {[key: string]: string};\n /**\n * Additional transfer process properties. These are not passed to the consumer EDC\n * @type {{ [key: string]: string; }}\n * @memberof InitiateTransferRequest\n */\n transferProcessProperties: {[key: string]: string};\n}\n\n/**\n * Check if a given object implements the InitiateTransferRequest interface.\n */\nexport function instanceOfInitiateTransferRequest(\n value: any,\n): value is InitiateTransferRequest {\n if (\n !('contractAgreementId' in value) ||\n value['contractAgreementId'] === undefined\n )\n return false;\n if (!('transferType' in value) || value['transferType'] === undefined)\n return false;\n if (\n !('dataSinkProperties' in value) ||\n value['dataSinkProperties'] === undefined\n )\n return false;\n if (\n !('transferProcessProperties' in value) ||\n value['transferProcessProperties'] === undefined\n )\n return false;\n return true;\n}\n\nexport function InitiateTransferRequestFromJSON(\n json: any,\n): InitiateTransferRequest {\n return InitiateTransferRequestFromJSONTyped(json, false);\n}\n\nexport function InitiateTransferRequestFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): InitiateTransferRequest {\n if (json == null) {\n return json;\n }\n return {\n contractAgreementId: json['contractAgreementId'],\n transferType: json['transferType'],\n dataSinkProperties: json['dataSinkProperties'],\n transferProcessProperties: json['transferProcessProperties'],\n };\n}\n\nexport function InitiateTransferRequestToJSON(\n json: any,\n): InitiateTransferRequest {\n return InitiateTransferRequestToJSONTyped(json, false);\n}\n\nexport function InitiateTransferRequestToJSONTyped(\n value?: InitiateTransferRequest | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n contractAgreementId: value['contractAgreementId'],\n transferType: value['transferType'],\n dataSinkProperties: value['dataSinkProperties'],\n transferProcessProperties: value['transferProcessProperties'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\n\n/**\n *\n * @export\n * @interface TransferProcessStatesDto\n */\nexport interface TransferProcessStatesDto {\n /**\n * States and count of incoming transferprocess counts\n * @type {{ [key: string]: number; }}\n * @memberof TransferProcessStatesDto\n */\n incomingTransferProcessCounts: {[key: string]: number};\n /**\n * States and counts of outgoing transferprocess counts\n * @type {{ [key: string]: number; }}\n * @memberof TransferProcessStatesDto\n */\n outgoingTransferProcessCounts: {[key: string]: number};\n}\n\n/**\n * Check if a given object implements the TransferProcessStatesDto interface.\n */\nexport function instanceOfTransferProcessStatesDto(\n value: any,\n): value is TransferProcessStatesDto {\n if (\n !('incomingTransferProcessCounts' in value) ||\n value['incomingTransferProcessCounts'] === undefined\n )\n return false;\n if (\n !('outgoingTransferProcessCounts' in value) ||\n value['outgoingTransferProcessCounts'] === undefined\n )\n return false;\n return true;\n}\n\nexport function TransferProcessStatesDtoFromJSON(\n json: any,\n): TransferProcessStatesDto {\n return TransferProcessStatesDtoFromJSONTyped(json, false);\n}\n\nexport function TransferProcessStatesDtoFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): TransferProcessStatesDto {\n if (json == null) {\n return json;\n }\n return {\n incomingTransferProcessCounts: json['incomingTransferProcessCounts'],\n outgoingTransferProcessCounts: json['outgoingTransferProcessCounts'],\n };\n}\n\nexport function TransferProcessStatesDtoToJSON(\n json: any,\n): TransferProcessStatesDto {\n return TransferProcessStatesDtoToJSONTyped(json, false);\n}\n\nexport function TransferProcessStatesDtoToJSONTyped(\n value?: TransferProcessStatesDto | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n incomingTransferProcessCounts: value['incomingTransferProcessCounts'],\n outgoingTransferProcessCounts: value['outgoingTransferProcessCounts'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {TransferProcessStatesDto} from './TransferProcessStatesDto';\nimport {\n TransferProcessStatesDtoFromJSON,\n TransferProcessStatesDtoFromJSONTyped,\n TransferProcessStatesDtoToJSON,\n TransferProcessStatesDtoToJSONTyped,\n} from './TransferProcessStatesDto';\n\n/**\n * EDC-status-defining KPIs\n * @export\n * @interface KpiResult\n */\nexport interface KpiResult {\n /**\n * Counts of assets\n * @type {number}\n * @memberof KpiResult\n */\n assetsCount: number;\n /**\n * Counts of policies\n * @type {number}\n * @memberof KpiResult\n */\n policiesCount: number;\n /**\n * Counts of contract definitions\n * @type {number}\n * @memberof KpiResult\n */\n contractDefinitionsCount: number;\n /**\n * Counts of contract agreements\n * @type {number}\n * @memberof KpiResult\n */\n contractAgreementsCount: number;\n /**\n * Counts of incoming and outgoing TransferProcesses and status\n * @type {TransferProcessStatesDto}\n * @memberof KpiResult\n */\n transferProcessDto: TransferProcessStatesDto;\n}\n\n/**\n * Check if a given object implements the KpiResult interface.\n */\nexport function instanceOfKpiResult(value: any): value is KpiResult {\n if (!('assetsCount' in value) || value['assetsCount'] === undefined)\n return false;\n if (!('policiesCount' in value) || value['policiesCount'] === undefined)\n return false;\n if (\n !('contractDefinitionsCount' in value) ||\n value['contractDefinitionsCount'] === undefined\n )\n return false;\n if (\n !('contractAgreementsCount' in value) ||\n value['contractAgreementsCount'] === undefined\n )\n return false;\n if (\n !('transferProcessDto' in value) ||\n value['transferProcessDto'] === undefined\n )\n return false;\n return true;\n}\n\nexport function KpiResultFromJSON(json: any): KpiResult {\n return KpiResultFromJSONTyped(json, false);\n}\n\nexport function KpiResultFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): KpiResult {\n if (json == null) {\n return json;\n }\n return {\n assetsCount: json['assetsCount'],\n policiesCount: json['policiesCount'],\n contractDefinitionsCount: json['contractDefinitionsCount'],\n contractAgreementsCount: json['contractAgreementsCount'],\n transferProcessDto: TransferProcessStatesDtoFromJSON(\n json['transferProcessDto'],\n ),\n };\n}\n\nexport function KpiResultToJSON(json: any): KpiResult {\n return KpiResultToJSONTyped(json, false);\n}\n\nexport function KpiResultToJSONTyped(\n value?: KpiResult | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n assetsCount: value['assetsCount'],\n policiesCount: value['policiesCount'],\n contractDefinitionsCount: value['contractDefinitionsCount'],\n contractAgreementsCount: value['contractAgreementsCount'],\n transferProcessDto: TransferProcessStatesDtoToJSON(\n value['transferProcessDto'],\n ),\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {AssetFilterConstraint} from './AssetFilterConstraint';\nimport {\n AssetFilterConstraintFromJSON,\n AssetFilterConstraintFromJSONTyped,\n AssetFilterConstraintToJSON,\n AssetFilterConstraintToJSONTyped,\n} from './AssetFilterConstraint';\nimport type {CallbackAddressDto} from './CallbackAddressDto';\nimport {\n CallbackAddressDtoFromJSON,\n CallbackAddressDtoFromJSONTyped,\n CallbackAddressDtoToJSON,\n CallbackAddressDtoToJSONTyped,\n} from './CallbackAddressDto';\n\n/**\n * Negotiates all given assets by the given filter\n * @export\n * @interface NegotiateAllQuery\n */\nexport interface NegotiateAllQuery {\n /**\n * Target EDC DSP endpoint URL\n * @type {string}\n * @memberof NegotiateAllQuery\n */\n connectorEndpoint: string;\n /**\n * Target EDC Participant ID\n * @type {string}\n * @memberof NegotiateAllQuery\n */\n participantId: string;\n /**\n * Data offers to negotiate. Filter expressions, joined by AND. If left empty, all data offers are negotiated\n * @type {Array<AssetFilterConstraint>}\n * @memberof NegotiateAllQuery\n */\n filter: Array<AssetFilterConstraint>;\n /**\n * Optional limit to limit the number of assets negotiated to\n * @type {number}\n * @memberof NegotiateAllQuery\n */\n limit?: number;\n /**\n * Optionally listen to negotiation success / failure for new negotiations\n * @type {Array<CallbackAddressDto>}\n * @memberof NegotiateAllQuery\n */\n callbackAddresses?: Array<CallbackAddressDto>;\n}\n\n/**\n * Check if a given object implements the NegotiateAllQuery interface.\n */\nexport function instanceOfNegotiateAllQuery(\n value: any,\n): value is NegotiateAllQuery {\n if (\n !('connectorEndpoint' in value) ||\n value['connectorEndpoint'] === undefined\n )\n return false;\n if (!('participantId' in value) || value['participantId'] === undefined)\n return false;\n if (!('filter' in value) || value['filter'] === undefined) return false;\n return true;\n}\n\nexport function NegotiateAllQueryFromJSON(json: any): NegotiateAllQuery {\n return NegotiateAllQueryFromJSONTyped(json, false);\n}\n\nexport function NegotiateAllQueryFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): NegotiateAllQuery {\n if (json == null) {\n return json;\n }\n return {\n connectorEndpoint: json['connectorEndpoint'],\n participantId: json['participantId'],\n filter: (json['filter'] as Array<any>).map(\n AssetFilterConstraintFromJSON,\n ),\n limit: json['limit'] == null ? undefined : json['limit'],\n callbackAddresses:\n json['callbackAddresses'] == null\n ? undefined\n : (json['callbackAddresses'] as Array<any>).map(\n CallbackAddressDtoFromJSON,\n ),\n };\n}\n\nexport function NegotiateAllQueryToJSON(json: any): NegotiateAllQuery {\n return NegotiateAllQueryToJSONTyped(json, false);\n}\n\nexport function NegotiateAllQueryToJSONTyped(\n value?: NegotiateAllQuery | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n connectorEndpoint: value['connectorEndpoint'],\n participantId: value['participantId'],\n filter: (value['filter'] as Array<any>).map(\n AssetFilterConstraintToJSON,\n ),\n limit: value['limit'],\n callbackAddresses:\n value['callbackAddresses'] == null\n ? undefined\n : (value['callbackAddresses'] as Array<any>).map(\n CallbackAddressDtoToJSON,\n ),\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {ContractNegotiationState} from './ContractNegotiationState';\nimport {\n ContractNegotiationStateFromJSON,\n ContractNegotiationStateFromJSONTyped,\n ContractNegotiationStateToJSON,\n ContractNegotiationStateToJSONTyped,\n} from './ContractNegotiationState';\nimport type {UiAsset} from './UiAsset';\nimport {\n UiAssetFromJSON,\n UiAssetFromJSONTyped,\n UiAssetToJSON,\n UiAssetToJSONTyped,\n} from './UiAsset';\nimport type {UiPolicy} from './UiPolicy';\nimport {\n UiPolicyFromJSON,\n UiPolicyFromJSONTyped,\n UiPolicyToJSON,\n UiPolicyToJSONTyped,\n} from './UiPolicy';\n\n/**\n * Negotiations that either already exist or were started\n * @export\n * @interface NegotiateAllResult\n */\nexport interface NegotiateAllResult {\n /**\n * Negotiation ID (either existing or new if no active contract was found)\n * @type {string}\n * @memberof NegotiateAllResult\n */\n contractNegotiationId: string;\n /**\n * Contract Agreement ID (will only be ever present if an active old negotiation was found)\n * @type {string}\n * @memberof NegotiateAllResult\n */\n contractAgreementId?: string;\n /**\n * Contract Negotiation State\n * @type {ContractNegotiationState}\n * @memberof NegotiateAllResult\n */\n state: ContractNegotiationState;\n /**\n * Contract Negotiation State Last Change\n * @type {Date}\n * @memberof NegotiateAllResult\n */\n stateChangedAt: Date;\n /**\n * Asset that was negotiated. Will not contain asset metadata for already negotiated offers\n * @type {UiAsset}\n * @memberof NegotiateAllResult\n */\n asset: UiAsset;\n /**\n * Contract Offer that was negotiated. Will not contain asset metadata for already negotiated offers\n * @type {UiPolicy}\n * @memberof NegotiateAllResult\n */\n policy: UiPolicy;\n}\n\n/**\n * Check if a given object implements the NegotiateAllResult interface.\n */\nexport function instanceOfNegotiateAllResult(\n value: any,\n): value is NegotiateAllResult {\n if (\n !('contractNegotiationId' in value) ||\n value['contractNegotiationId'] === undefined\n )\n return false;\n if (!('state' in value) || value['state'] === undefined) return false;\n if (!('stateChangedAt' in value) || value['stateChangedAt'] === undefined)\n return false;\n if (!('asset' in value) || value['asset'] === undefined) return false;\n if (!('policy' in value) || value['policy'] === undefined) return false;\n return true;\n}\n\nexport function NegotiateAllResultFromJSON(json: any): NegotiateAllResult {\n return NegotiateAllResultFromJSONTyped(json, false);\n}\n\nexport function NegotiateAllResultFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): NegotiateAllResult {\n if (json == null) {\n return json;\n }\n return {\n contractNegotiationId: json['contractNegotiationId'],\n contractAgreementId:\n json['contractAgreementId'] == null\n ? undefined\n : json['contractAgreementId'],\n state: ContractNegotiationStateFromJSON(json['state']),\n stateChangedAt: new Date(json['stateChangedAt']),\n asset: UiAssetFromJSON(json['asset']),\n policy: UiPolicyFromJSON(json['policy']),\n };\n}\n\nexport function NegotiateAllResultToJSON(json: any): NegotiateAllResult {\n return NegotiateAllResultToJSONTyped(json, false);\n}\n\nexport function NegotiateAllResultToJSONTyped(\n value?: NegotiateAllResult | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n contractNegotiationId: value['contractNegotiationId'],\n contractAgreementId: value['contractAgreementId'],\n state: ContractNegotiationStateToJSON(value['state']),\n stateChangedAt: value['stateChangedAt'].toISOString(),\n asset: UiAssetToJSON(value['asset']),\n policy: UiPolicyToJSON(value['policy']),\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {UiPolicyExpression} from './UiPolicyExpression';\nimport {\n UiPolicyExpressionFromJSON,\n UiPolicyExpressionFromJSONTyped,\n UiPolicyExpressionToJSON,\n UiPolicyExpressionToJSONTyped,\n} from './UiPolicyExpression';\n\n/**\n * Create a Policy Definition\n * @export\n * @interface PolicyDefinitionCreateDto\n */\nexport interface PolicyDefinitionCreateDto {\n /**\n * Policy Definition ID\n * @type {string}\n * @memberof PolicyDefinitionCreateDto\n */\n policyDefinitionId: string;\n /**\n * Policy Expression\n * @type {UiPolicyExpression}\n * @memberof PolicyDefinitionCreateDto\n */\n expression: UiPolicyExpression;\n}\n\n/**\n * Check if a given object implements the PolicyDefinitionCreateDto interface.\n */\nexport function instanceOfPolicyDefinitionCreateDto(\n value: any,\n): value is PolicyDefinitionCreateDto {\n if (\n !('policyDefinitionId' in value) ||\n value['policyDefinitionId'] === undefined\n )\n return false;\n if (!('expression' in value) || value['expression'] === undefined)\n return false;\n return true;\n}\n\nexport function PolicyDefinitionCreateDtoFromJSON(\n json: any,\n): PolicyDefinitionCreateDto {\n return PolicyDefinitionCreateDtoFromJSONTyped(json, false);\n}\n\nexport function PolicyDefinitionCreateDtoFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): PolicyDefinitionCreateDto {\n if (json == null) {\n return json;\n }\n return {\n policyDefinitionId: json['policyDefinitionId'],\n expression: UiPolicyExpressionFromJSON(json['expression']),\n };\n}\n\nexport function PolicyDefinitionCreateDtoToJSON(\n json: any,\n): PolicyDefinitionCreateDto {\n return PolicyDefinitionCreateDtoToJSONTyped(json, false);\n}\n\nexport function PolicyDefinitionCreateDtoToJSONTyped(\n value?: PolicyDefinitionCreateDto | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n policyDefinitionId: value['policyDefinitionId'],\n expression: UiPolicyExpressionToJSON(value['expression']),\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {UiPolicyConstraint} from './UiPolicyConstraint';\nimport {\n UiPolicyConstraintFromJSON,\n UiPolicyConstraintFromJSONTyped,\n UiPolicyConstraintToJSON,\n UiPolicyConstraintToJSONTyped,\n} from './UiPolicyConstraint';\n\n/**\n * [Deprecated] Conjunction of constraints (simplified UiPolicyExpression)\n * @export\n * @interface UiPolicyCreateRequest\n */\nexport interface UiPolicyCreateRequest {\n /**\n * Conjunction of required constraints\n * @type {Array<UiPolicyConstraint>}\n * @memberof UiPolicyCreateRequest\n */\n constraints?: Array<UiPolicyConstraint>;\n}\n\n/**\n * Check if a given object implements the UiPolicyCreateRequest interface.\n */\nexport function instanceOfUiPolicyCreateRequest(\n value: any,\n): value is UiPolicyCreateRequest {\n return true;\n}\n\nexport function UiPolicyCreateRequestFromJSON(\n json: any,\n): UiPolicyCreateRequest {\n return UiPolicyCreateRequestFromJSONTyped(json, false);\n}\n\nexport function UiPolicyCreateRequestFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): UiPolicyCreateRequest {\n if (json == null) {\n return json;\n }\n return {\n constraints:\n json['constraints'] == null\n ? undefined\n : (json['constraints'] as Array<any>).map(\n UiPolicyConstraintFromJSON,\n ),\n };\n}\n\nexport function UiPolicyCreateRequestToJSON(json: any): UiPolicyCreateRequest {\n return UiPolicyCreateRequestToJSONTyped(json, false);\n}\n\nexport function UiPolicyCreateRequestToJSONTyped(\n value?: UiPolicyCreateRequest | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n constraints:\n value['constraints'] == null\n ? undefined\n : (value['constraints'] as Array<any>).map(\n UiPolicyConstraintToJSON,\n ),\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {UiPolicyCreateRequest} from './UiPolicyCreateRequest';\nimport {\n UiPolicyCreateRequestFromJSON,\n UiPolicyCreateRequestFromJSONTyped,\n UiPolicyCreateRequestToJSON,\n UiPolicyCreateRequestToJSONTyped,\n} from './UiPolicyCreateRequest';\n\n/**\n * [Deprecated] Create a Policy Definition. Use PolicyDefinitionCreateDto\n * @export\n * @interface PolicyDefinitionCreateRequest\n */\nexport interface PolicyDefinitionCreateRequest {\n /**\n * Policy Definition ID\n * @type {string}\n * @memberof PolicyDefinitionCreateRequest\n */\n policyDefinitionId: string;\n /**\n * [Deprecated] Conjunction of constraints (simplified UiPolicyExpression)\n * @type {UiPolicyCreateRequest}\n * @memberof PolicyDefinitionCreateRequest\n * @deprecated\n */\n policy: UiPolicyCreateRequest;\n}\n\n/**\n * Check if a given object implements the PolicyDefinitionCreateRequest interface.\n */\nexport function instanceOfPolicyDefinitionCreateRequest(\n value: any,\n): value is PolicyDefinitionCreateRequest {\n if (\n !('policyDefinitionId' in value) ||\n value['policyDefinitionId'] === undefined\n )\n return false;\n if (!('policy' in value) || value['policy'] === undefined) return false;\n return true;\n}\n\nexport function PolicyDefinitionCreateRequestFromJSON(\n json: any,\n): PolicyDefinitionCreateRequest {\n return PolicyDefinitionCreateRequestFromJSONTyped(json, false);\n}\n\nexport function PolicyDefinitionCreateRequestFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): PolicyDefinitionCreateRequest {\n if (json == null) {\n return json;\n }\n return {\n policyDefinitionId: json['policyDefinitionId'],\n policy: UiPolicyCreateRequestFromJSON(json['policy']),\n };\n}\n\nexport function PolicyDefinitionCreateRequestToJSON(\n json: any,\n): PolicyDefinitionCreateRequest {\n return PolicyDefinitionCreateRequestToJSONTyped(json, false);\n}\n\nexport function PolicyDefinitionCreateRequestToJSONTyped(\n value?: PolicyDefinitionCreateRequest | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n policyDefinitionId: value['policyDefinitionId'],\n policy: UiPolicyCreateRequestToJSON(value['policy']),\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {UiPolicy} from './UiPolicy';\nimport {\n UiPolicyFromJSON,\n UiPolicyFromJSONTyped,\n UiPolicyToJSON,\n UiPolicyToJSONTyped,\n} from './UiPolicy';\n\n/**\n * Policy Definition as required for the Policy Definition Page\n * @export\n * @interface PolicyDefinitionDto\n */\nexport interface PolicyDefinitionDto {\n /**\n * Policy Definition ID\n * @type {string}\n * @memberof PolicyDefinitionDto\n */\n policyDefinitionId: string;\n /**\n * Policy Contents\n * @type {UiPolicy}\n * @memberof PolicyDefinitionDto\n */\n policy: UiPolicy;\n}\n\n/**\n * Check if a given object implements the PolicyDefinitionDto interface.\n */\nexport function instanceOfPolicyDefinitionDto(\n value: any,\n): value is PolicyDefinitionDto {\n if (\n !('policyDefinitionId' in value) ||\n value['policyDefinitionId'] === undefined\n )\n return false;\n if (!('policy' in value) || value['policy'] === undefined) return false;\n return true;\n}\n\nexport function PolicyDefinitionDtoFromJSON(json: any): PolicyDefinitionDto {\n return PolicyDefinitionDtoFromJSONTyped(json, false);\n}\n\nexport function PolicyDefinitionDtoFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): PolicyDefinitionDto {\n if (json == null) {\n return json;\n }\n return {\n policyDefinitionId: json['policyDefinitionId'],\n policy: UiPolicyFromJSON(json['policy']),\n };\n}\n\nexport function PolicyDefinitionDtoToJSON(json: any): PolicyDefinitionDto {\n return PolicyDefinitionDtoToJSONTyped(json, false);\n}\n\nexport function PolicyDefinitionDtoToJSONTyped(\n value?: PolicyDefinitionDto | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n policyDefinitionId: value['policyDefinitionId'],\n policy: UiPolicyToJSON(value['policy']),\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {PolicyDefinitionDto} from './PolicyDefinitionDto';\nimport {\n PolicyDefinitionDtoFromJSON,\n PolicyDefinitionDtoFromJSONTyped,\n PolicyDefinitionDtoToJSON,\n PolicyDefinitionDtoToJSONTyped,\n} from './PolicyDefinitionDto';\n\n/**\n * All data for the policy definition page as required by the UI\n * @export\n * @interface PolicyDefinitionPage\n */\nexport interface PolicyDefinitionPage {\n /**\n * Policy Definition Entries\n * @type {Array<PolicyDefinitionDto>}\n * @memberof PolicyDefinitionPage\n */\n policies: Array<PolicyDefinitionDto>;\n}\n\n/**\n * Check if a given object implements the PolicyDefinitionPage interface.\n */\nexport function instanceOfPolicyDefinitionPage(\n value: any,\n): value is PolicyDefinitionPage {\n if (!('policies' in value) || value['policies'] === undefined) return false;\n return true;\n}\n\nexport function PolicyDefinitionPageFromJSON(json: any): PolicyDefinitionPage {\n return PolicyDefinitionPageFromJSONTyped(json, false);\n}\n\nexport function PolicyDefinitionPageFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): PolicyDefinitionPage {\n if (json == null) {\n return json;\n }\n return {\n policies: (json['policies'] as Array<any>).map(\n PolicyDefinitionDtoFromJSON,\n ),\n };\n}\n\nexport function PolicyDefinitionPageToJSON(json: any): PolicyDefinitionPage {\n return PolicyDefinitionPageToJSONTyped(json, false);\n}\n\nexport function PolicyDefinitionPageToJSONTyped(\n value?: PolicyDefinitionPage | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n policies: (value['policies'] as Array<any>).map(\n PolicyDefinitionDtoToJSON,\n ),\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {ContractAgreementDirection} from './ContractAgreementDirection';\nimport {\n ContractAgreementDirectionFromJSON,\n ContractAgreementDirectionFromJSONTyped,\n ContractAgreementDirectionToJSON,\n ContractAgreementDirectionToJSONTyped,\n} from './ContractAgreementDirection';\nimport type {TransferProcessState} from './TransferProcessState';\nimport {\n TransferProcessStateFromJSON,\n TransferProcessStateFromJSONTyped,\n TransferProcessStateToJSON,\n TransferProcessStateToJSONTyped,\n} from './TransferProcessState';\n\n/**\n * Transfer History Entry for Transfer History Page\n * @export\n * @interface TransferHistoryEntry\n */\nexport interface TransferHistoryEntry {\n /**\n * Transfer Process ID\n * @type {string}\n * @memberof TransferHistoryEntry\n */\n transferProcessId: string;\n /**\n * Created Date\n * @type {Date}\n * @memberof TransferHistoryEntry\n */\n createdDate: Date;\n /**\n * Last Change Date\n * @type {Date}\n * @memberof TransferHistoryEntry\n */\n lastUpdatedDate: Date;\n /**\n * Transfer Type\n * @type {string}\n * @memberof TransferHistoryEntry\n */\n transferType: string;\n /**\n * Transfer History State\n * @type {TransferProcessState}\n * @memberof TransferHistoryEntry\n */\n state: TransferProcessState;\n /**\n * Contract Agreement ID\n * @type {string}\n * @memberof TransferHistoryEntry\n */\n contractAgreementId: string;\n /**\n * Incoming vs Outgoing\n * @type {ContractAgreementDirection}\n * @memberof TransferHistoryEntry\n */\n direction: ContractAgreementDirection;\n /**\n * Other Connector's Endpoint\n * @type {string}\n * @memberof TransferHistoryEntry\n */\n counterPartyConnectorEndpoint: string;\n /**\n * Other Connector's Participant ID\n * @type {string}\n * @memberof TransferHistoryEntry\n */\n counterPartyParticipantId: string;\n /**\n * Asset Name\n * @type {string}\n * @memberof TransferHistoryEntry\n */\n assetName: string;\n /**\n * Asset ID\n * @type {string}\n * @memberof TransferHistoryEntry\n */\n assetId: string;\n /**\n * Error Message\n * @type {string}\n * @memberof TransferHistoryEntry\n */\n errorMessage?: string;\n /**\n * Whether this transfer is available for consumption via an EDR.\n * @type {boolean}\n * @memberof TransferHistoryEntry\n */\n isEdrConsumable: boolean;\n}\n\n/**\n * Check if a given object implements the TransferHistoryEntry interface.\n */\nexport function instanceOfTransferHistoryEntry(\n value: any,\n): value is TransferHistoryEntry {\n if (\n !('transferProcessId' in value) ||\n value['transferProcessId'] === undefined\n )\n return false;\n if (!('createdDate' in value) || value['createdDate'] === undefined)\n return false;\n if (!('lastUpdatedDate' in value) || value['lastUpdatedDate'] === undefined)\n return false;\n if (!('transferType' in value) || value['transferType'] === undefined)\n return false;\n if (!('state' in value) || value['state'] === undefined) return false;\n if (\n !('contractAgreementId' in value) ||\n value['contractAgreementId'] === undefined\n )\n return false;\n if (!('direction' in value) || value['direction'] === undefined)\n return false;\n if (\n !('counterPartyConnectorEndpoint' in value) ||\n value['counterPartyConnectorEndpoint'] === undefined\n )\n return false;\n if (\n !('counterPartyParticipantId' in value) ||\n value['counterPartyParticipantId'] === undefined\n )\n return false;\n if (!('assetName' in value) || value['assetName'] === undefined)\n return false;\n if (!('assetId' in value) || value['assetId'] === undefined) return false;\n if (!('isEdrConsumable' in value) || value['isEdrConsumable'] === undefined)\n return false;\n return true;\n}\n\nexport function TransferHistoryEntryFromJSON(json: any): TransferHistoryEntry {\n return TransferHistoryEntryFromJSONTyped(json, false);\n}\n\nexport function TransferHistoryEntryFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): TransferHistoryEntry {\n if (json == null) {\n return json;\n }\n return {\n transferProcessId: json['transferProcessId'],\n createdDate: new Date(json['createdDate']),\n lastUpdatedDate: new Date(json['lastUpdatedDate']),\n transferType: json['transferType'],\n state: TransferProcessStateFromJSON(json['state']),\n contractAgreementId: json['contractAgreementId'],\n direction: ContractAgreementDirectionFromJSON(json['direction']),\n counterPartyConnectorEndpoint: json['counterPartyConnectorEndpoint'],\n counterPartyParticipantId: json['counterPartyParticipantId'],\n assetName: json['assetName'],\n assetId: json['assetId'],\n errorMessage:\n json['errorMessage'] == null ? undefined : json['errorMessage'],\n isEdrConsumable: json['isEdrConsumable'],\n };\n}\n\nexport function TransferHistoryEntryToJSON(json: any): TransferHistoryEntry {\n return TransferHistoryEntryToJSONTyped(json, false);\n}\n\nexport function TransferHistoryEntryToJSONTyped(\n value?: TransferHistoryEntry | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n transferProcessId: value['transferProcessId'],\n createdDate: value['createdDate'].toISOString(),\n lastUpdatedDate: value['lastUpdatedDate'].toISOString(),\n transferType: value['transferType'],\n state: TransferProcessStateToJSON(value['state']),\n contractAgreementId: value['contractAgreementId'],\n direction: ContractAgreementDirectionToJSON(value['direction']),\n counterPartyConnectorEndpoint: value['counterPartyConnectorEndpoint'],\n counterPartyParticipantId: value['counterPartyParticipantId'],\n assetName: value['assetName'],\n assetId: value['assetId'],\n errorMessage: value['errorMessage'],\n isEdrConsumable: value['isEdrConsumable'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {TransferHistoryEntry} from './TransferHistoryEntry';\nimport {\n TransferHistoryEntryFromJSON,\n TransferHistoryEntryFromJSONTyped,\n TransferHistoryEntryToJSON,\n TransferHistoryEntryToJSONTyped,\n} from './TransferHistoryEntry';\n\n/**\n * Data as required by the UI's Transfer History Page\n * @export\n * @interface TransferHistoryPage\n */\nexport interface TransferHistoryPage {\n /**\n * Transfer History Page Entries\n * @type {Array<TransferHistoryEntry>}\n * @memberof TransferHistoryPage\n */\n transferEntries: Array<TransferHistoryEntry>;\n}\n\n/**\n * Check if a given object implements the TransferHistoryPage interface.\n */\nexport function instanceOfTransferHistoryPage(\n value: any,\n): value is TransferHistoryPage {\n if (!('transferEntries' in value) || value['transferEntries'] === undefined)\n return false;\n return true;\n}\n\nexport function TransferHistoryPageFromJSON(json: any): TransferHistoryPage {\n return TransferHistoryPageFromJSONTyped(json, false);\n}\n\nexport function TransferHistoryPageFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): TransferHistoryPage {\n if (json == null) {\n return json;\n }\n return {\n transferEntries: (json['transferEntries'] as Array<any>).map(\n TransferHistoryEntryFromJSON,\n ),\n };\n}\n\nexport function TransferHistoryPageToJSON(json: any): TransferHistoryPage {\n return TransferHistoryPageToJSONTyped(json, false);\n}\n\nexport function TransferHistoryPageToJSONTyped(\n value?: TransferHistoryPage | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n transferEntries: (value['transferEntries'] as Array<any>).map(\n TransferHistoryEntryToJSON,\n ),\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {TransferProcessState} from './TransferProcessState';\nimport {\n TransferProcessStateFromJSON,\n TransferProcessStateFromJSONTyped,\n TransferProcessStateToJSON,\n TransferProcessStateToJSONTyped,\n} from './TransferProcessState';\n\n/**\n * Transfer process state\n * @export\n * @interface TransferProcessStateResult\n */\nexport interface TransferProcessStateResult {\n /**\n * Transfer Process ID\n * @type {string}\n * @memberof TransferProcessStateResult\n */\n transferId: string;\n /**\n * Transfer Process State\n * @type {TransferProcessState}\n * @memberof TransferProcessStateResult\n */\n state: TransferProcessState;\n /**\n * Transfer Process State Last Change\n * @type {Date}\n * @memberof TransferProcessStateResult\n */\n stateChangedAt: Date;\n /**\n * Whether this transfer is available for consumption via an EDR.\n * @type {boolean}\n * @memberof TransferProcessStateResult\n */\n isEdrConsumable: boolean;\n}\n\n/**\n * Check if a given object implements the TransferProcessStateResult interface.\n */\nexport function instanceOfTransferProcessStateResult(\n value: any,\n): value is TransferProcessStateResult {\n if (!('transferId' in value) || value['transferId'] === undefined)\n return false;\n if (!('state' in value) || value['state'] === undefined) return false;\n if (!('stateChangedAt' in value) || value['stateChangedAt'] === undefined)\n return false;\n if (!('isEdrConsumable' in value) || value['isEdrConsumable'] === undefined)\n return false;\n return true;\n}\n\nexport function TransferProcessStateResultFromJSON(\n json: any,\n): TransferProcessStateResult {\n return TransferProcessStateResultFromJSONTyped(json, false);\n}\n\nexport function TransferProcessStateResultFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): TransferProcessStateResult {\n if (json == null) {\n return json;\n }\n return {\n transferId: json['transferId'],\n state: TransferProcessStateFromJSON(json['state']),\n stateChangedAt: new Date(json['stateChangedAt']),\n isEdrConsumable: json['isEdrConsumable'],\n };\n}\n\nexport function TransferProcessStateResultToJSON(\n json: any,\n): TransferProcessStateResult {\n return TransferProcessStateResultToJSONTyped(json, false);\n}\n\nexport function TransferProcessStateResultToJSONTyped(\n value?: TransferProcessStateResult | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n transferId: value['transferId'],\n state: TransferProcessStateToJSON(value['state']),\n stateChangedAt: value['stateChangedAt'].toISOString(),\n isEdrConsumable: value['isEdrConsumable'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {UiAssetExtForSphinx} from './UiAssetExtForSphinx';\nimport {\n UiAssetExtForSphinxFromJSON,\n UiAssetExtForSphinxFromJSONTyped,\n UiAssetExtForSphinxToJSON,\n UiAssetExtForSphinxToJSONTyped,\n} from './UiAssetExtForSphinx';\nimport type {UiDataSource} from './UiDataSource';\nimport {\n UiDataSourceFromJSON,\n UiDataSourceFromJSONTyped,\n UiDataSourceToJSON,\n UiDataSourceToJSONTyped,\n} from './UiDataSource';\n\n/**\n * Type-safe data offer metadata for editing an asset as supported by the sovity product landscape. Contains extension points.\n * @export\n * @interface UiAssetEditRequest\n */\nexport interface UiAssetEditRequest {\n /**\n * Data Source\n * @type {UiDataSource}\n * @memberof UiAssetEditRequest\n */\n dataSourceOverrideOrNull?: UiDataSource;\n /**\n * Asset Title\n * @type {string}\n * @memberof UiAssetEditRequest\n */\n title?: string;\n /**\n * Asset Language\n * @type {string}\n * @memberof UiAssetEditRequest\n */\n language?: string;\n /**\n * Asset Description\n * @type {string}\n * @memberof UiAssetEditRequest\n */\n description?: string;\n /**\n * Asset Homepage\n * @type {string}\n * @memberof UiAssetEditRequest\n */\n publisherHomepage?: string;\n /**\n * License URL\n * @type {string}\n * @memberof UiAssetEditRequest\n */\n licenseUrl?: string;\n /**\n * Version\n * @type {string}\n * @memberof UiAssetEditRequest\n */\n version?: string;\n /**\n * Asset Keywords\n * @type {Array<string>}\n * @memberof UiAssetEditRequest\n */\n keywords?: Array<string>;\n /**\n * Asset MediaType\n * @type {string}\n * @memberof UiAssetEditRequest\n */\n mediaType?: string;\n /**\n * Landing Page URL\n * @type {string}\n * @memberof UiAssetEditRequest\n */\n landingPageUrl?: string;\n /**\n * Data Model\n * @type {string}\n * @memberof UiAssetEditRequest\n */\n dataModel?: string;\n /**\n * The sovereign is distinct from the publisher by being the legal owner of the data.\n * @type {string}\n * @memberof UiAssetEditRequest\n */\n sovereignLegalName?: string;\n /**\n * Data sample URLs\n * @type {Array<string>}\n * @memberof UiAssetEditRequest\n */\n dataSampleUrls?: Array<string>;\n /**\n * Reference file/schema URLs\n * @type {Array<string>}\n * @memberof UiAssetEditRequest\n */\n referenceFileUrls?: Array<string>;\n /**\n * Additional information on reference files/schemas\n * @type {string}\n * @memberof UiAssetEditRequest\n */\n referenceFilesDescription?: string;\n /**\n * Instructions for use that are not legally relevant e.g. information on how to cite the dataset in papers\n * @type {string}\n * @memberof UiAssetEditRequest\n */\n conditionsForUse?: string;\n /**\n * Data update frequency\n * @type {string}\n * @memberof UiAssetEditRequest\n */\n dataUpdateFrequency?: string;\n /**\n * Temporal coverage start date\n * @type {Date}\n * @memberof UiAssetEditRequest\n */\n temporalCoverageFrom?: Date;\n /**\n * Temporal coverage end date (inclusive)\n * @type {Date}\n * @memberof UiAssetEditRequest\n */\n temporalCoverageToInclusive?: Date;\n /**\n * sphin-x dataspace specific asset metadata fields\n * @type {UiAssetExtForSphinx}\n * @memberof UiAssetEditRequest\n */\n sphinxFields?: UiAssetExtForSphinx;\n /**\n * Contains serialized custom properties in the JSON format.\n * @type {string}\n * @memberof UiAssetEditRequest\n */\n customJsonAsString?: string;\n /**\n * Contains serialized custom properties in the JSON LD format. Contrary to the customJsonAsString field, this string must represent a JSON LD object and will be affected by JSON LD compaction and expansion. Due to a technical limitation, the properties can't be booleans.\n * @type {string}\n * @memberof UiAssetEditRequest\n */\n customJsonLdAsString?: string;\n /**\n * Same as customJsonAsString but the data will be stored in the private properties.\n * @type {string}\n * @memberof UiAssetEditRequest\n */\n privateCustomJsonAsString?: string;\n /**\n * Same as customJsonLdAsString but the data will be stored in the private properties. The same limitations apply.\n * @type {string}\n * @memberof UiAssetEditRequest\n */\n privateCustomJsonLdAsString?: string;\n}\n\n/**\n * Check if a given object implements the UiAssetEditRequest interface.\n */\nexport function instanceOfUiAssetEditRequest(\n value: any,\n): value is UiAssetEditRequest {\n return true;\n}\n\nexport function UiAssetEditRequestFromJSON(json: any): UiAssetEditRequest {\n return UiAssetEditRequestFromJSONTyped(json, false);\n}\n\nexport function UiAssetEditRequestFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): UiAssetEditRequest {\n if (json == null) {\n return json;\n }\n return {\n dataSourceOverrideOrNull:\n json['dataSourceOverrideOrNull'] == null\n ? undefined\n : UiDataSourceFromJSON(json['dataSourceOverrideOrNull']),\n title: json['title'] == null ? undefined : json['title'],\n language: json['language'] == null ? undefined : json['language'],\n description:\n json['description'] == null ? undefined : json['description'],\n publisherHomepage:\n json['publisherHomepage'] == null\n ? undefined\n : json['publisherHomepage'],\n licenseUrl: json['licenseUrl'] == null ? undefined : json['licenseUrl'],\n version: json['version'] == null ? undefined : json['version'],\n keywords: json['keywords'] == null ? undefined : json['keywords'],\n mediaType: json['mediaType'] == null ? undefined : json['mediaType'],\n landingPageUrl:\n json['landingPageUrl'] == null ? undefined : json['landingPageUrl'],\n dataModel: json['dataModel'] == null ? undefined : json['dataModel'],\n sovereignLegalName:\n json['sovereignLegalName'] == null\n ? undefined\n : json['sovereignLegalName'],\n dataSampleUrls:\n json['dataSampleUrls'] == null ? undefined : json['dataSampleUrls'],\n referenceFileUrls:\n json['referenceFileUrls'] == null\n ? undefined\n : json['referenceFileUrls'],\n referenceFilesDescription:\n json['referenceFilesDescription'] == null\n ? undefined\n : json['referenceFilesDescription'],\n conditionsForUse:\n json['conditionsForUse'] == null\n ? undefined\n : json['conditionsForUse'],\n dataUpdateFrequency:\n json['dataUpdateFrequency'] == null\n ? undefined\n : json['dataUpdateFrequency'],\n temporalCoverageFrom:\n json['temporalCoverageFrom'] == null\n ? undefined\n : new Date(json['temporalCoverageFrom']),\n temporalCoverageToInclusive:\n json['temporalCoverageToInclusive'] == null\n ? undefined\n : new Date(json['temporalCoverageToInclusive']),\n sphinxFields:\n json['sphinxFields'] == null\n ? undefined\n : UiAssetExtForSphinxFromJSON(json['sphinxFields']),\n customJsonAsString:\n json['customJsonAsString'] == null\n ? undefined\n : json['customJsonAsString'],\n customJsonLdAsString:\n json['customJsonLdAsString'] == null\n ? undefined\n : json['customJsonLdAsString'],\n privateCustomJsonAsString:\n json['privateCustomJsonAsString'] == null\n ? undefined\n : json['privateCustomJsonAsString'],\n privateCustomJsonLdAsString:\n json['privateCustomJsonLdAsString'] == null\n ? undefined\n : json['privateCustomJsonLdAsString'],\n };\n}\n\nexport function UiAssetEditRequestToJSON(json: any): UiAssetEditRequest {\n return UiAssetEditRequestToJSONTyped(json, false);\n}\n\nexport function UiAssetEditRequestToJSONTyped(\n value?: UiAssetEditRequest | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n dataSourceOverrideOrNull: UiDataSourceToJSON(\n value['dataSourceOverrideOrNull'],\n ),\n title: value['title'],\n language: value['language'],\n description: value['description'],\n publisherHomepage: value['publisherHomepage'],\n licenseUrl: value['licenseUrl'],\n version: value['version'],\n keywords: value['keywords'],\n mediaType: value['mediaType'],\n landingPageUrl: value['landingPageUrl'],\n dataModel: value['dataModel'],\n sovereignLegalName: value['sovereignLegalName'],\n dataSampleUrls: value['dataSampleUrls'],\n referenceFileUrls: value['referenceFileUrls'],\n referenceFilesDescription: value['referenceFilesDescription'],\n conditionsForUse: value['conditionsForUse'],\n dataUpdateFrequency: value['dataUpdateFrequency'],\n temporalCoverageFrom:\n value['temporalCoverageFrom'] == null\n ? undefined\n : value['temporalCoverageFrom'].toISOString().substring(0, 10),\n temporalCoverageToInclusive:\n value['temporalCoverageToInclusive'] == null\n ? undefined\n : value['temporalCoverageToInclusive']\n .toISOString()\n .substring(0, 10),\n sphinxFields: UiAssetExtForSphinxToJSON(value['sphinxFields']),\n customJsonAsString: value['customJsonAsString'],\n customJsonLdAsString: value['customJsonLdAsString'],\n privateCustomJsonAsString: value['privateCustomJsonAsString'],\n privateCustomJsonLdAsString: value['privateCustomJsonLdAsString'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n/* eslint-disable */\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n/**\n * Enabled UI Features\n * @export\n */\nexport const UiConfigFeature = {\n ConnectorLimits: 'CONNECTOR_LIMITS',\n OpenSourceMarketing: 'OPEN_SOURCE_MARKETING',\n EeBasicMarketing: 'EE_BASIC_MARKETING',\n CatenaPolicies: 'CATENA_POLICIES',\n SovityPolicies: 'SOVITY_POLICIES',\n SphinxPolicies: 'SPHINX_POLICIES',\n SphinxAssetMetadata: 'SPHINX_ASSET_METADATA',\n BusinessPartnerGroupManagement: 'BUSINESS_PARTNER_GROUP_MANAGEMENT',\n} as const;\nexport type UiConfigFeature =\n (typeof UiConfigFeature)[keyof typeof UiConfigFeature];\n\nexport function instanceOfUiConfigFeature(value: any): boolean {\n for (const key in UiConfigFeature) {\n if (Object.prototype.hasOwnProperty.call(UiConfigFeature, key)) {\n if (\n UiConfigFeature[key as keyof typeof UiConfigFeature] === value\n ) {\n return true;\n }\n }\n }\n return false;\n}\n\nexport function UiConfigFeatureFromJSON(json: any): UiConfigFeature {\n return UiConfigFeatureFromJSONTyped(json, false);\n}\n\nexport function UiConfigFeatureFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): UiConfigFeature {\n return json as UiConfigFeature;\n}\n\nexport function UiConfigFeatureToJSON(value?: UiConfigFeature | null): any {\n return value as any;\n}\n\nexport function UiConfigFeatureToJSONTyped(\n value: any,\n ignoreDiscriminator: boolean,\n): UiConfigFeature {\n return value as UiConfigFeature;\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\n\n/**\n * Pre-configured counterparty for the Catalog\n * @export\n * @interface UiConfigPreconfiguredCounterparty\n */\nexport interface UiConfigPreconfiguredCounterparty {\n /**\n * Participant ID\n * @type {string}\n * @memberof UiConfigPreconfiguredCounterparty\n */\n participantId: string;\n /**\n * Connector Endpoint\n * @type {string}\n * @memberof UiConfigPreconfiguredCounterparty\n */\n connectorEndpoint: string;\n}\n\n/**\n * Check if a given object implements the UiConfigPreconfiguredCounterparty interface.\n */\nexport function instanceOfUiConfigPreconfiguredCounterparty(\n value: any,\n): value is UiConfigPreconfiguredCounterparty {\n if (!('participantId' in value) || value['participantId'] === undefined)\n return false;\n if (\n !('connectorEndpoint' in value) ||\n value['connectorEndpoint'] === undefined\n )\n return false;\n return true;\n}\n\nexport function UiConfigPreconfiguredCounterpartyFromJSON(\n json: any,\n): UiConfigPreconfiguredCounterparty {\n return UiConfigPreconfiguredCounterpartyFromJSONTyped(json, false);\n}\n\nexport function UiConfigPreconfiguredCounterpartyFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): UiConfigPreconfiguredCounterparty {\n if (json == null) {\n return json;\n }\n return {\n participantId: json['participantId'],\n connectorEndpoint: json['connectorEndpoint'],\n };\n}\n\nexport function UiConfigPreconfiguredCounterpartyToJSON(\n json: any,\n): UiConfigPreconfiguredCounterparty {\n return UiConfigPreconfiguredCounterpartyToJSONTyped(json, false);\n}\n\nexport function UiConfigPreconfiguredCounterpartyToJSONTyped(\n value?: UiConfigPreconfiguredCounterparty | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n participantId: value['participantId'],\n connectorEndpoint: value['connectorEndpoint'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {UiConfigFeature} from './UiConfigFeature';\nimport {\n UiConfigFeatureFromJSON,\n UiConfigFeatureFromJSONTyped,\n UiConfigFeatureToJSON,\n UiConfigFeatureToJSONTyped,\n} from './UiConfigFeature';\nimport type {UiConfigPreconfiguredCounterparty} from './UiConfigPreconfiguredCounterparty';\nimport {\n UiConfigPreconfiguredCounterpartyFromJSON,\n UiConfigPreconfiguredCounterpartyFromJSONTyped,\n UiConfigPreconfiguredCounterpartyToJSON,\n UiConfigPreconfiguredCounterpartyToJSONTyped,\n} from './UiConfigPreconfiguredCounterparty';\n\n/**\n * UI Config\n * @export\n * @interface UiConfig\n */\nexport interface UiConfig {\n /**\n * Enabled features\n * @type {Array<UiConfigFeature>}\n * @memberof UiConfig\n */\n features: Array<UiConfigFeature>;\n /**\n * Pre-configured Counterparty Connectors\n * @type {Array<UiConfigPreconfiguredCounterparty>}\n * @memberof UiConfig\n */\n preconfiguredCounterparties: Array<UiConfigPreconfiguredCounterparty>;\n /**\n * Logout URL\n * @type {string}\n * @memberof UiConfig\n */\n logoutUrl?: string;\n /**\n * Documentation URL\n * @type {string}\n * @memberof UiConfig\n */\n documentationUrl?: string;\n /**\n * Support URL\n * @type {string}\n * @memberof UiConfig\n */\n supportUrl?: string;\n /**\n * Privacy Policy URL\n * @type {string}\n * @memberof UiConfig\n */\n privacyPolicyUrl?: string;\n /**\n * Legal Notice URL\n * @type {string}\n * @memberof UiConfig\n */\n legalNoticeUrl?: string;\n /**\n * ICP Footer Link Text\n * @type {string}\n * @memberof UiConfig\n */\n icpFooterLinkText?: string;\n /**\n * ICP Footer Link URL\n * @type {string}\n * @memberof UiConfig\n */\n icpFooterLinkUrl?: string;\n}\n\n/**\n * Check if a given object implements the UiConfig interface.\n */\nexport function instanceOfUiConfig(value: any): value is UiConfig {\n if (!('features' in value) || value['features'] === undefined) return false;\n if (\n !('preconfiguredCounterparties' in value) ||\n value['preconfiguredCounterparties'] === undefined\n )\n return false;\n return true;\n}\n\nexport function UiConfigFromJSON(json: any): UiConfig {\n return UiConfigFromJSONTyped(json, false);\n}\n\nexport function UiConfigFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): UiConfig {\n if (json == null) {\n return json;\n }\n return {\n features: (json['features'] as Array<any>).map(UiConfigFeatureFromJSON),\n preconfiguredCounterparties: (\n json['preconfiguredCounterparties'] as Array<any>\n ).map(UiConfigPreconfiguredCounterpartyFromJSON),\n logoutUrl: json['logoutUrl'] == null ? undefined : json['logoutUrl'],\n documentationUrl:\n json['documentationUrl'] == null\n ? undefined\n : json['documentationUrl'],\n supportUrl: json['supportUrl'] == null ? undefined : json['supportUrl'],\n privacyPolicyUrl:\n json['privacyPolicyUrl'] == null\n ? undefined\n : json['privacyPolicyUrl'],\n legalNoticeUrl:\n json['legalNoticeUrl'] == null ? undefined : json['legalNoticeUrl'],\n icpFooterLinkText:\n json['icpFooterLinkText'] == null\n ? undefined\n : json['icpFooterLinkText'],\n icpFooterLinkUrl:\n json['icpFooterLinkUrl'] == null\n ? undefined\n : json['icpFooterLinkUrl'],\n };\n}\n\nexport function UiConfigToJSON(json: any): UiConfig {\n return UiConfigToJSONTyped(json, false);\n}\n\nexport function UiConfigToJSONTyped(\n value?: UiConfig | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n features: (value['features'] as Array<any>).map(UiConfigFeatureToJSON),\n preconfiguredCounterparties: (\n value['preconfiguredCounterparties'] as Array<any>\n ).map(UiConfigPreconfiguredCounterpartyToJSON),\n logoutUrl: value['logoutUrl'],\n documentationUrl: value['documentationUrl'],\n supportUrl: value['supportUrl'],\n privacyPolicyUrl: value['privacyPolicyUrl'],\n legalNoticeUrl: value['legalNoticeUrl'],\n icpFooterLinkText: value['icpFooterLinkText'],\n icpFooterLinkUrl: value['icpFooterLinkUrl'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {ContractNegotiationState} from './ContractNegotiationState';\nimport {\n ContractNegotiationStateFromJSON,\n ContractNegotiationStateFromJSONTyped,\n ContractNegotiationStateToJSON,\n ContractNegotiationStateToJSONTyped,\n} from './ContractNegotiationState';\n\n/**\n * Contract Negotiation Information\n * @export\n * @interface UiContractNegotiation\n */\nexport interface UiContractNegotiation {\n /**\n * Contract Negotiation Id\n * @type {string}\n * @memberof UiContractNegotiation\n */\n contractNegotiationId: string;\n /**\n * Contract Negotiation Creation Time\n * @type {Date}\n * @memberof UiContractNegotiation\n */\n createdAt: Date;\n /**\n * Contract Agreement Id\n * @type {string}\n * @memberof UiContractNegotiation\n */\n contractAgreementId?: string;\n /**\n * State of the Contract Negotiation state machine\n * @type {ContractNegotiationState}\n * @memberof UiContractNegotiation\n */\n state: ContractNegotiationState;\n}\n\n/**\n * Check if a given object implements the UiContractNegotiation interface.\n */\nexport function instanceOfUiContractNegotiation(\n value: any,\n): value is UiContractNegotiation {\n if (\n !('contractNegotiationId' in value) ||\n value['contractNegotiationId'] === undefined\n )\n return false;\n if (!('createdAt' in value) || value['createdAt'] === undefined)\n return false;\n if (!('state' in value) || value['state'] === undefined) return false;\n return true;\n}\n\nexport function UiContractNegotiationFromJSON(\n json: any,\n): UiContractNegotiation {\n return UiContractNegotiationFromJSONTyped(json, false);\n}\n\nexport function UiContractNegotiationFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): UiContractNegotiation {\n if (json == null) {\n return json;\n }\n return {\n contractNegotiationId: json['contractNegotiationId'],\n createdAt: new Date(json['createdAt']),\n contractAgreementId:\n json['contractAgreementId'] == null\n ? undefined\n : json['contractAgreementId'],\n state: ContractNegotiationStateFromJSON(json['state']),\n };\n}\n\nexport function UiContractNegotiationToJSON(json: any): UiContractNegotiation {\n return UiContractNegotiationToJSONTyped(json, false);\n}\n\nexport function UiContractNegotiationToJSONTyped(\n value?: UiContractNegotiation | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n contractNegotiationId: value['contractNegotiationId'],\n createdAt: value['createdAt'].toISOString(),\n contractAgreementId: value['contractAgreementId'],\n state: ContractNegotiationStateToJSON(value['state']),\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {UiPolicy} from './UiPolicy';\nimport {\n UiPolicyFromJSON,\n UiPolicyFromJSONTyped,\n UiPolicyToJSON,\n UiPolicyToJSONTyped,\n} from './UiPolicy';\n\n/**\n * Catalog Data Offer's Contract Offer as required by the UI\n * @export\n * @interface UiContractOffer\n */\nexport interface UiContractOffer {\n /**\n * Contract Offer ID\n * @type {string}\n * @memberof UiContractOffer\n */\n contractOfferId: string;\n /**\n * Policy\n * @type {UiPolicy}\n * @memberof UiContractOffer\n */\n policy: UiPolicy;\n}\n\n/**\n * Check if a given object implements the UiContractOffer interface.\n */\nexport function instanceOfUiContractOffer(\n value: any,\n): value is UiContractOffer {\n if (!('contractOfferId' in value) || value['contractOfferId'] === undefined)\n return false;\n if (!('policy' in value) || value['policy'] === undefined) return false;\n return true;\n}\n\nexport function UiContractOfferFromJSON(json: any): UiContractOffer {\n return UiContractOfferFromJSONTyped(json, false);\n}\n\nexport function UiContractOfferFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): UiContractOffer {\n if (json == null) {\n return json;\n }\n return {\n contractOfferId: json['contractOfferId'],\n policy: UiPolicyFromJSON(json['policy']),\n };\n}\n\nexport function UiContractOfferToJSON(json: any): UiContractOffer {\n return UiContractOfferToJSONTyped(json, false);\n}\n\nexport function UiContractOfferToJSONTyped(\n value?: UiContractOffer | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n contractOfferId: value['contractOfferId'],\n policy: UiPolicyToJSON(value['policy']),\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {UiAsset} from './UiAsset';\nimport {\n UiAssetFromJSON,\n UiAssetFromJSONTyped,\n UiAssetToJSON,\n UiAssetToJSONTyped,\n} from './UiAsset';\nimport type {UiContractOffer} from './UiContractOffer';\nimport {\n UiContractOfferFromJSON,\n UiContractOfferFromJSONTyped,\n UiContractOfferToJSON,\n UiContractOfferToJSONTyped,\n} from './UiContractOffer';\n\n/**\n * Catalog Data Offer as required by the UI\n * @export\n * @interface UiDataOffer\n */\nexport interface UiDataOffer {\n /**\n * Connector Endpoint\n * @type {string}\n * @memberof UiDataOffer\n */\n endpoint: string;\n /**\n * Participant ID. Required for initiating transfers.\n * @type {string}\n * @memberof UiDataOffer\n */\n participantId: string;\n /**\n * Asset Information\n * @type {UiAsset}\n * @memberof UiDataOffer\n */\n asset: UiAsset;\n /**\n * Available Contract Offers\n * @type {Array<UiContractOffer>}\n * @memberof UiDataOffer\n */\n contractOffers: Array<UiContractOffer>;\n}\n\n/**\n * Check if a given object implements the UiDataOffer interface.\n */\nexport function instanceOfUiDataOffer(value: any): value is UiDataOffer {\n if (!('endpoint' in value) || value['endpoint'] === undefined) return false;\n if (!('participantId' in value) || value['participantId'] === undefined)\n return false;\n if (!('asset' in value) || value['asset'] === undefined) return false;\n if (!('contractOffers' in value) || value['contractOffers'] === undefined)\n return false;\n return true;\n}\n\nexport function UiDataOfferFromJSON(json: any): UiDataOffer {\n return UiDataOfferFromJSONTyped(json, false);\n}\n\nexport function UiDataOfferFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): UiDataOffer {\n if (json == null) {\n return json;\n }\n return {\n endpoint: json['endpoint'],\n participantId: json['participantId'],\n asset: UiAssetFromJSON(json['asset']),\n contractOffers: (json['contractOffers'] as Array<any>).map(\n UiContractOfferFromJSON,\n ),\n };\n}\n\nexport function UiDataOfferToJSON(json: any): UiDataOffer {\n return UiDataOfferToJSONTyped(json, false);\n}\n\nexport function UiDataOfferToJSONTyped(\n value?: UiDataOffer | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n endpoint: value['endpoint'],\n participantId: value['participantId'],\n asset: UiAssetToJSON(value['asset']),\n contractOffers: (value['contractOffers'] as Array<any>).map(\n UiContractOfferToJSON,\n ),\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n/* eslint-disable */\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n/**\n * Supported HTTP Methods by UiDataSink\n * @export\n */\nexport const UiDataSinkHttpDataPushMethod = {\n Post: 'POST',\n Put: 'PUT',\n Patch: 'PATCH',\n Delete: 'DELETE',\n Options: 'OPTIONS',\n} as const;\nexport type UiDataSinkHttpDataPushMethod =\n (typeof UiDataSinkHttpDataPushMethod)[keyof typeof UiDataSinkHttpDataPushMethod];\n\nexport function instanceOfUiDataSinkHttpDataPushMethod(value: any): boolean {\n for (const key in UiDataSinkHttpDataPushMethod) {\n if (\n Object.prototype.hasOwnProperty.call(\n UiDataSinkHttpDataPushMethod,\n key,\n )\n ) {\n if (\n UiDataSinkHttpDataPushMethod[\n key as keyof typeof UiDataSinkHttpDataPushMethod\n ] === value\n ) {\n return true;\n }\n }\n }\n return false;\n}\n\nexport function UiDataSinkHttpDataPushMethodFromJSON(\n json: any,\n): UiDataSinkHttpDataPushMethod {\n return UiDataSinkHttpDataPushMethodFromJSONTyped(json, false);\n}\n\nexport function UiDataSinkHttpDataPushMethodFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): UiDataSinkHttpDataPushMethod {\n return json as UiDataSinkHttpDataPushMethod;\n}\n\nexport function UiDataSinkHttpDataPushMethodToJSON(\n value?: UiDataSinkHttpDataPushMethod | null,\n): any {\n return value as any;\n}\n\nexport function UiDataSinkHttpDataPushMethodToJSONTyped(\n value: any,\n ignoreDiscriminator: boolean,\n): UiDataSinkHttpDataPushMethod {\n return value as UiDataSinkHttpDataPushMethod;\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n/* eslint-disable */\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n/**\n * Supported authentication types for HTTP Push Transfers. OAuth2 is not supported in the deprecated HttpPush transfer type due to previous security concerns in the architecture of this flow\n * @export\n */\nexport const UiHttpPushAuthType = {\n Basic: 'BASIC',\n ApiKey: 'API_KEY',\n} as const;\nexport type UiHttpPushAuthType =\n (typeof UiHttpPushAuthType)[keyof typeof UiHttpPushAuthType];\n\nexport function instanceOfUiHttpPushAuthType(value: any): boolean {\n for (const key in UiHttpPushAuthType) {\n if (Object.prototype.hasOwnProperty.call(UiHttpPushAuthType, key)) {\n if (\n UiHttpPushAuthType[key as keyof typeof UiHttpPushAuthType] ===\n value\n ) {\n return true;\n }\n }\n }\n return false;\n}\n\nexport function UiHttpPushAuthTypeFromJSON(json: any): UiHttpPushAuthType {\n return UiHttpPushAuthTypeFromJSONTyped(json, false);\n}\n\nexport function UiHttpPushAuthTypeFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): UiHttpPushAuthType {\n return json as UiHttpPushAuthType;\n}\n\nexport function UiHttpPushAuthTypeToJSON(\n value?: UiHttpPushAuthType | null,\n): any {\n return value as any;\n}\n\nexport function UiHttpPushAuthTypeToJSONTyped(\n value: any,\n ignoreDiscriminator: boolean,\n): UiHttpPushAuthType {\n return value as UiHttpPushAuthType;\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {UiHttpAuthApiKey} from './UiHttpAuthApiKey';\nimport {\n UiHttpAuthApiKeyFromJSON,\n UiHttpAuthApiKeyFromJSONTyped,\n UiHttpAuthApiKeyToJSON,\n UiHttpAuthApiKeyToJSONTyped,\n} from './UiHttpAuthApiKey';\nimport type {UiHttpAuthBasic} from './UiHttpAuthBasic';\nimport {\n UiHttpAuthBasicFromJSON,\n UiHttpAuthBasicFromJSONTyped,\n UiHttpAuthBasicToJSON,\n UiHttpAuthBasicToJSONTyped,\n} from './UiHttpAuthBasic';\nimport type {UiHttpPushAuthType} from './UiHttpPushAuthType';\nimport {\n UiHttpPushAuthTypeFromJSON,\n UiHttpPushAuthTypeFromJSONTyped,\n UiHttpPushAuthTypeToJSON,\n UiHttpPushAuthTypeToJSONTyped,\n} from './UiHttpPushAuthType';\n\n/**\n * Available authentication methods for when pushing data into a data sink with HTTP PUSH. Use only one.\n * @export\n * @interface UiHttpPushAuth\n */\nexport interface UiHttpPushAuth {\n /**\n * The type of authentication.\n * @type {UiHttpPushAuthType}\n * @memberof UiHttpPushAuth\n */\n type: UiHttpPushAuthType;\n /**\n * Required when type=BASIC. To use basic authentication.\n * @type {UiHttpAuthBasic}\n * @memberof UiHttpPushAuth\n */\n basic?: UiHttpAuthBasic;\n /**\n * Required when type=API_KEY. To use api key authentication with a secret from the vault.\n * @type {UiHttpAuthApiKey}\n * @memberof UiHttpPushAuth\n */\n apiKey?: UiHttpAuthApiKey;\n}\n\n/**\n * Check if a given object implements the UiHttpPushAuth interface.\n */\nexport function instanceOfUiHttpPushAuth(value: any): value is UiHttpPushAuth {\n if (!('type' in value) || value['type'] === undefined) return false;\n return true;\n}\n\nexport function UiHttpPushAuthFromJSON(json: any): UiHttpPushAuth {\n return UiHttpPushAuthFromJSONTyped(json, false);\n}\n\nexport function UiHttpPushAuthFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): UiHttpPushAuth {\n if (json == null) {\n return json;\n }\n return {\n type: UiHttpPushAuthTypeFromJSON(json['type']),\n basic:\n json['basic'] == null\n ? undefined\n : UiHttpAuthBasicFromJSON(json['basic']),\n apiKey:\n json['apiKey'] == null\n ? undefined\n : UiHttpAuthApiKeyFromJSON(json['apiKey']),\n };\n}\n\nexport function UiHttpPushAuthToJSON(json: any): UiHttpPushAuth {\n return UiHttpPushAuthToJSONTyped(json, false);\n}\n\nexport function UiHttpPushAuthToJSONTyped(\n value?: UiHttpPushAuth | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n type: UiHttpPushAuthTypeToJSON(value['type']),\n basic: UiHttpAuthBasicToJSON(value['basic']),\n apiKey: UiHttpAuthApiKeyToJSON(value['apiKey']),\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {UiDataSinkHttpDataPushMethod} from './UiDataSinkHttpDataPushMethod';\nimport {\n UiDataSinkHttpDataPushMethodFromJSON,\n UiDataSinkHttpDataPushMethodFromJSONTyped,\n UiDataSinkHttpDataPushMethodToJSON,\n UiDataSinkHttpDataPushMethodToJSONTyped,\n} from './UiDataSinkHttpDataPushMethod';\nimport type {UiHttpPushAuth} from './UiHttpPushAuth';\nimport {\n UiHttpPushAuthFromJSON,\n UiHttpPushAuthFromJSONTyped,\n UiHttpPushAuthToJSON,\n UiHttpPushAuthToJSONTyped,\n} from './UiHttpPushAuth';\n\n/**\n * HTTP_DATA type Data Source. This is an HttpData-PUSH data sink. Note that consumption of parameterized data sources is not supported via HttpData-PUSH\n * @export\n * @interface UiDataSinkHttpDataPush\n */\nexport interface UiDataSinkHttpDataPush {\n /**\n * HTTP Request Method\n * @type {UiDataSinkHttpDataPushMethod}\n * @memberof UiDataSinkHttpDataPush\n */\n method?: UiDataSinkHttpDataPushMethod;\n /**\n * HTTP Request URL.\n * @type {string}\n * @memberof UiDataSinkHttpDataPush\n */\n baseUrl: string;\n /**\n * HTTP Request Query Params / Query String.\n * @type {string}\n * @memberof UiDataSinkHttpDataPush\n */\n queryString?: string;\n /**\n * The authentication method.\n * @type {UiHttpPushAuth}\n * @memberof UiDataSinkHttpDataPush\n */\n auth?: UiHttpPushAuth;\n /**\n * HTTP Request Headers.\n * @type {{ [key: string]: string; }}\n * @memberof UiDataSinkHttpDataPush\n */\n headers?: {[key: string]: string};\n}\n\n/**\n * Check if a given object implements the UiDataSinkHttpDataPush interface.\n */\nexport function instanceOfUiDataSinkHttpDataPush(\n value: any,\n): value is UiDataSinkHttpDataPush {\n if (!('baseUrl' in value) || value['baseUrl'] === undefined) return false;\n return true;\n}\n\nexport function UiDataSinkHttpDataPushFromJSON(\n json: any,\n): UiDataSinkHttpDataPush {\n return UiDataSinkHttpDataPushFromJSONTyped(json, false);\n}\n\nexport function UiDataSinkHttpDataPushFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): UiDataSinkHttpDataPush {\n if (json == null) {\n return json;\n }\n return {\n method:\n json['method'] == null\n ? undefined\n : UiDataSinkHttpDataPushMethodFromJSON(json['method']),\n baseUrl: json['baseUrl'],\n queryString:\n json['queryString'] == null ? undefined : json['queryString'],\n auth:\n json['auth'] == null\n ? undefined\n : UiHttpPushAuthFromJSON(json['auth']),\n headers: json['headers'] == null ? undefined : json['headers'],\n };\n}\n\nexport function UiDataSinkHttpDataPushToJSON(\n json: any,\n): UiDataSinkHttpDataPush {\n return UiDataSinkHttpDataPushToJSONTyped(json, false);\n}\n\nexport function UiDataSinkHttpDataPushToJSONTyped(\n value?: UiDataSinkHttpDataPush | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n method: UiDataSinkHttpDataPushMethodToJSON(value['method']),\n baseUrl: value['baseUrl'],\n queryString: value['queryString'],\n auth: UiHttpPushAuthToJSON(value['auth']),\n headers: value['headers'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n/* eslint-disable */\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\n\n/**\n * Supported Data Sink Types by UiDataSink:\n * - `HTTP_DATA_PUSH`: This EDC's data plane pushes the data into the given data sink, putting the payload as request body.\n * - `HTTP_DATA_PROXY`: Once the transfer is in the status STARTED, you can call a 2nd endpoint to receive the EDR.\n * The EDR will contain an URL you can call as a proxy to the data source. Which parts of the HTTP call are passed\n * on is decided by the configuration of parameterization on the data source, e.g. an added path, method, body or query params.\n * - `CUSTOM`: Provide custom transfer type, data sink properties and transfer properties to use a\n * transfer type that is not fully integrated into the API Wrapper yet.\n *\n * @export\n */\nexport const UiInitiateTransferType = {\n HttpDataPush: 'HTTP_DATA_PUSH',\n HttpDataProxy: 'HTTP_DATA_PROXY',\n Custom: 'CUSTOM',\n} as const;\nexport type UiInitiateTransferType =\n (typeof UiInitiateTransferType)[keyof typeof UiInitiateTransferType];\n\nexport function instanceOfUiInitiateTransferType(value: any): boolean {\n for (const key in UiInitiateTransferType) {\n if (Object.prototype.hasOwnProperty.call(UiInitiateTransferType, key)) {\n if (\n UiInitiateTransferType[\n key as keyof typeof UiInitiateTransferType\n ] === value\n ) {\n return true;\n }\n }\n }\n return false;\n}\n\nexport function UiInitiateTransferTypeFromJSON(\n json: any,\n): UiInitiateTransferType {\n return UiInitiateTransferTypeFromJSONTyped(json, false);\n}\n\nexport function UiInitiateTransferTypeFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): UiInitiateTransferType {\n return json as UiInitiateTransferType;\n}\n\nexport function UiInitiateTransferTypeToJSON(\n value?: UiInitiateTransferType | null,\n): any {\n return value as any;\n}\n\nexport function UiInitiateTransferTypeToJSONTyped(\n value: any,\n ignoreDiscriminator: boolean,\n): UiInitiateTransferType {\n return value as UiInitiateTransferType;\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\nimport type {CallbackAddressDto} from './CallbackAddressDto';\nimport {\n CallbackAddressDtoFromJSON,\n CallbackAddressDtoFromJSONTyped,\n CallbackAddressDtoToJSON,\n CallbackAddressDtoToJSONTyped,\n} from './CallbackAddressDto';\nimport type {UiDataSinkHttpDataPush} from './UiDataSinkHttpDataPush';\nimport {\n UiDataSinkHttpDataPushFromJSON,\n UiDataSinkHttpDataPushFromJSONTyped,\n UiDataSinkHttpDataPushToJSON,\n UiDataSinkHttpDataPushToJSONTyped,\n} from './UiDataSinkHttpDataPush';\nimport type {UiInitiateTransferType} from './UiInitiateTransferType';\nimport {\n UiInitiateTransferTypeFromJSON,\n UiInitiateTransferTypeFromJSONTyped,\n UiInitiateTransferTypeToJSON,\n UiInitiateTransferTypeToJSONTyped,\n} from './UiInitiateTransferType';\n\n/**\n * Type-safe data sink as supported by the sovity product landscape. Contains extension points for using custom data address properties.\n * @export\n * @interface UiInitiateTransferRequest\n */\nexport interface UiInitiateTransferRequest {\n /**\n * Contract Agreement ID\n * @type {string}\n * @memberof UiInitiateTransferRequest\n */\n contractAgreementId: string;\n /**\n * Type of a transfer to initiate\n * @type {UiInitiateTransferType}\n * @memberof UiInitiateTransferRequest\n */\n type: UiInitiateTransferType;\n /**\n * Only for type HTTP_DATA_PUSH\n * @type {UiDataSinkHttpDataPush}\n * @memberof UiInitiateTransferRequest\n */\n httpDataPush?: UiDataSinkHttpDataPush;\n /**\n * List of endpoints to call upon given transfer events\n * @type {Array<CallbackAddressDto>}\n * @memberof UiInitiateTransferRequest\n */\n callbackAddresses?: Array<CallbackAddressDto>;\n /**\n * For all types. Custom Data Address Properties.\n * @type {{ [key: string]: string; }}\n * @memberof UiInitiateTransferRequest\n */\n customDataSinkProperties?: {[key: string]: string};\n /**\n * For all types. Custom Transfer Process Properties.\n * @type {{ [key: string]: string; }}\n * @memberof UiInitiateTransferRequest\n */\n customTransferPrivateProperties?: {[key: string]: string};\n /**\n * For all types. Override the Transfer Type.\n * @type {string}\n * @memberof UiInitiateTransferRequest\n */\n customTransferType?: string;\n}\n\n/**\n * Check if a given object implements the UiInitiateTransferRequest interface.\n */\nexport function instanceOfUiInitiateTransferRequest(\n value: any,\n): value is UiInitiateTransferRequest {\n if (\n !('contractAgreementId' in value) ||\n value['contractAgreementId'] === undefined\n )\n return false;\n if (!('type' in value) || value['type'] === undefined) return false;\n return true;\n}\n\nexport function UiInitiateTransferRequestFromJSON(\n json: any,\n): UiInitiateTransferRequest {\n return UiInitiateTransferRequestFromJSONTyped(json, false);\n}\n\nexport function UiInitiateTransferRequestFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): UiInitiateTransferRequest {\n if (json == null) {\n return json;\n }\n return {\n contractAgreementId: json['contractAgreementId'],\n type: UiInitiateTransferTypeFromJSON(json['type']),\n httpDataPush:\n json['httpDataPush'] == null\n ? undefined\n : UiDataSinkHttpDataPushFromJSON(json['httpDataPush']),\n callbackAddresses:\n json['callbackAddresses'] == null\n ? undefined\n : (json['callbackAddresses'] as Array<any>).map(\n CallbackAddressDtoFromJSON,\n ),\n customDataSinkProperties:\n json['customDataSinkProperties'] == null\n ? undefined\n : json['customDataSinkProperties'],\n customTransferPrivateProperties:\n json['customTransferPrivateProperties'] == null\n ? undefined\n : json['customTransferPrivateProperties'],\n customTransferType:\n json['customTransferType'] == null\n ? undefined\n : json['customTransferType'],\n };\n}\n\nexport function UiInitiateTransferRequestToJSON(\n json: any,\n): UiInitiateTransferRequest {\n return UiInitiateTransferRequestToJSONTyped(json, false);\n}\n\nexport function UiInitiateTransferRequestToJSONTyped(\n value?: UiInitiateTransferRequest | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n contractAgreementId: value['contractAgreementId'],\n type: UiInitiateTransferTypeToJSON(value['type']),\n httpDataPush: UiDataSinkHttpDataPushToJSON(value['httpDataPush']),\n callbackAddresses:\n value['callbackAddresses'] == null\n ? undefined\n : (value['callbackAddresses'] as Array<any>).map(\n CallbackAddressDtoToJSON,\n ),\n customDataSinkProperties: value['customDataSinkProperties'],\n customTransferPrivateProperties:\n value['customTransferPrivateProperties'],\n customTransferType: value['customTransferType'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\n\n/**\n * Submit Request for creating a new User Managed Vault Secret\n * @export\n * @interface VaultSecretCreateSubmit\n */\nexport interface VaultSecretCreateSubmit {\n /**\n * Key\n * @type {string}\n * @memberof VaultSecretCreateSubmit\n */\n key: string;\n /**\n * Value\n * @type {string}\n * @memberof VaultSecretCreateSubmit\n */\n value: string;\n /**\n * Description\n * @type {string}\n * @memberof VaultSecretCreateSubmit\n */\n description: string;\n}\n\n/**\n * Check if a given object implements the VaultSecretCreateSubmit interface.\n */\nexport function instanceOfVaultSecretCreateSubmit(\n value: any,\n): value is VaultSecretCreateSubmit {\n if (!('key' in value) || value['key'] === undefined) return false;\n if (!('value' in value) || value['value'] === undefined) return false;\n if (!('description' in value) || value['description'] === undefined)\n return false;\n return true;\n}\n\nexport function VaultSecretCreateSubmitFromJSON(\n json: any,\n): VaultSecretCreateSubmit {\n return VaultSecretCreateSubmitFromJSONTyped(json, false);\n}\n\nexport function VaultSecretCreateSubmitFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): VaultSecretCreateSubmit {\n if (json == null) {\n return json;\n }\n return {\n key: json['key'],\n value: json['value'],\n description: json['description'],\n };\n}\n\nexport function VaultSecretCreateSubmitToJSON(\n json: any,\n): VaultSecretCreateSubmit {\n return VaultSecretCreateSubmitToJSONTyped(json, false);\n}\n\nexport function VaultSecretCreateSubmitToJSONTyped(\n value?: VaultSecretCreateSubmit | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n key: value['key'],\n value: value['value'],\n description: value['description'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\n\n/**\n * Data for the Edit Page for User Managed Vault Secrets\n * @export\n * @interface VaultSecretEditPage\n */\nexport interface VaultSecretEditPage {\n /**\n * Key\n * @type {string}\n * @memberof VaultSecretEditPage\n */\n key: string;\n /**\n * Description\n * @type {string}\n * @memberof VaultSecretEditPage\n */\n description: string;\n}\n\n/**\n * Check if a given object implements the VaultSecretEditPage interface.\n */\nexport function instanceOfVaultSecretEditPage(\n value: any,\n): value is VaultSecretEditPage {\n if (!('key' in value) || value['key'] === undefined) return false;\n if (!('description' in value) || value['description'] === undefined)\n return false;\n return true;\n}\n\nexport function VaultSecretEditPageFromJSON(json: any): VaultSecretEditPage {\n return VaultSecretEditPageFromJSONTyped(json, false);\n}\n\nexport function VaultSecretEditPageFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): VaultSecretEditPage {\n if (json == null) {\n return json;\n }\n return {\n key: json['key'],\n description: json['description'],\n };\n}\n\nexport function VaultSecretEditPageToJSON(json: any): VaultSecretEditPage {\n return VaultSecretEditPageToJSONTyped(json, false);\n}\n\nexport function VaultSecretEditPageToJSONTyped(\n value?: VaultSecretEditPage | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n key: value['key'],\n description: value['description'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\n\n/**\n * Submit Request for editing a User Managed Vault Secret\n * @export\n * @interface VaultSecretEditSubmit\n */\nexport interface VaultSecretEditSubmit {\n /**\n * Secret value of the vault secret. If null, will not change the stored value\n * @type {string}\n * @memberof VaultSecretEditSubmit\n */\n value?: string;\n /**\n * Description\n * @type {string}\n * @memberof VaultSecretEditSubmit\n */\n description: string;\n}\n\n/**\n * Check if a given object implements the VaultSecretEditSubmit interface.\n */\nexport function instanceOfVaultSecretEditSubmit(\n value: any,\n): value is VaultSecretEditSubmit {\n if (!('description' in value) || value['description'] === undefined)\n return false;\n return true;\n}\n\nexport function VaultSecretEditSubmitFromJSON(\n json: any,\n): VaultSecretEditSubmit {\n return VaultSecretEditSubmitFromJSONTyped(json, false);\n}\n\nexport function VaultSecretEditSubmitFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): VaultSecretEditSubmit {\n if (json == null) {\n return json;\n }\n return {\n value: json['value'] == null ? undefined : json['value'],\n description: json['description'],\n };\n}\n\nexport function VaultSecretEditSubmitToJSON(json: any): VaultSecretEditSubmit {\n return VaultSecretEditSubmitToJSONTyped(json, false);\n}\n\nexport function VaultSecretEditSubmitToJSONTyped(\n value?: VaultSecretEditSubmit | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n value: value['value'],\n description: value['description'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\n\n/**\n * List Page Entry for the List Page of User Managed Vault Secrets\n * @export\n * @interface VaultSecretListPageEntry\n */\nexport interface VaultSecretListPageEntry {\n /**\n * Key\n * @type {string}\n * @memberof VaultSecretListPageEntry\n */\n key: string;\n /**\n * Description\n * @type {string}\n * @memberof VaultSecretListPageEntry\n */\n description: string;\n /**\n * Updated At\n * @type {Date}\n * @memberof VaultSecretListPageEntry\n */\n updatedAt: Date;\n}\n\n/**\n * Check if a given object implements the VaultSecretListPageEntry interface.\n */\nexport function instanceOfVaultSecretListPageEntry(\n value: any,\n): value is VaultSecretListPageEntry {\n if (!('key' in value) || value['key'] === undefined) return false;\n if (!('description' in value) || value['description'] === undefined)\n return false;\n if (!('updatedAt' in value) || value['updatedAt'] === undefined)\n return false;\n return true;\n}\n\nexport function VaultSecretListPageEntryFromJSON(\n json: any,\n): VaultSecretListPageEntry {\n return VaultSecretListPageEntryFromJSONTyped(json, false);\n}\n\nexport function VaultSecretListPageEntryFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): VaultSecretListPageEntry {\n if (json == null) {\n return json;\n }\n return {\n key: json['key'],\n description: json['description'],\n updatedAt: new Date(json['updatedAt']),\n };\n}\n\nexport function VaultSecretListPageEntryToJSON(\n json: any,\n): VaultSecretListPageEntry {\n return VaultSecretListPageEntryToJSONTyped(json, false);\n}\n\nexport function VaultSecretListPageEntryToJSONTyped(\n value?: VaultSecretListPageEntry | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n key: value['key'],\n description: value['description'],\n updatedAt: value['updatedAt'].toISOString(),\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport {mapValues} from '../runtime';\n\n/**\n * Query for filtering Vault Secrets\n * @export\n * @interface VaultSecretQuery\n */\nexport interface VaultSecretQuery {\n /**\n * Search Query String\n * @type {string}\n * @memberof VaultSecretQuery\n */\n searchQuery?: string;\n /**\n * Number of items to display\n * @type {number}\n * @memberof VaultSecretQuery\n */\n limit?: number;\n}\n\n/**\n * Check if a given object implements the VaultSecretQuery interface.\n */\nexport function instanceOfVaultSecretQuery(\n value: any,\n): value is VaultSecretQuery {\n return true;\n}\n\nexport function VaultSecretQueryFromJSON(json: any): VaultSecretQuery {\n return VaultSecretQueryFromJSONTyped(json, false);\n}\n\nexport function VaultSecretQueryFromJSONTyped(\n json: any,\n ignoreDiscriminator: boolean,\n): VaultSecretQuery {\n if (json == null) {\n return json;\n }\n return {\n searchQuery:\n json['searchQuery'] == null ? undefined : json['searchQuery'],\n limit: json['limit'] == null ? undefined : json['limit'],\n };\n}\n\nexport function VaultSecretQueryToJSON(json: any): VaultSecretQuery {\n return VaultSecretQueryToJSONTyped(json, false);\n}\n\nexport function VaultSecretQueryToJSONTyped(\n value?: VaultSecretQuery | null,\n ignoreDiscriminator: boolean = false,\n): any {\n if (value == null) {\n return value;\n }\n\n return {\n searchQuery: value['searchQuery'],\n limit: value['limit'],\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport type {ConnectorLimits, UiAssetCreateRequest} from '../models/index';\nimport {\n ConnectorLimitsFromJSON,\n ConnectorLimitsToJSON,\n UiAssetCreateRequestFromJSON,\n UiAssetCreateRequestToJSON,\n} from '../models/index';\nimport * as runtime from '../runtime';\n\nexport interface FileUploadCreateAssetRequest {\n blobId: string;\n uiAssetCreateRequest: UiAssetCreateRequest;\n}\n\n/**\n *\n */\nexport class EnterpriseEditionApi extends runtime.BaseAPI {\n /**\n * Available and used resources of a connector.\n */\n async connectorLimitsRaw(\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<ConnectorLimits>> {\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n const response = await this.request(\n {\n path: `/wrapper/ee/connector-limits`,\n method: 'GET',\n headers: headerParameters,\n query: queryParameters,\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n ConnectorLimitsFromJSON(jsonValue),\n );\n }\n\n /**\n * Available and used resources of a connector.\n */\n async connectorLimits(\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<ConnectorLimits> {\n const response = await this.connectorLimitsRaw(initOverrides);\n return await response.value();\n }\n\n /**\n * Creates an asset using the uploaded file as data source.\n * Create an asset from an uploaded file.\n */\n async fileUploadCreateAssetRaw(\n requestParameters: FileUploadCreateAssetRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<void>> {\n if (requestParameters['blobId'] == null) {\n throw new runtime.RequiredError(\n 'blobId',\n 'Required parameter \"blobId\" was null or undefined when calling fileUploadCreateAsset().',\n );\n }\n\n if (requestParameters['uiAssetCreateRequest'] == null) {\n throw new runtime.RequiredError(\n 'uiAssetCreateRequest',\n 'Required parameter \"uiAssetCreateRequest\" was null or undefined when calling fileUploadCreateAsset().',\n );\n }\n\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n headerParameters['Content-Type'] = 'application/json';\n\n const response = await this.request(\n {\n path: `/wrapper/ee/file-upload/blobs/{blobId}/asset`.replace(\n `{${'blobId'}}`,\n encodeURIComponent(String(requestParameters['blobId'])),\n ),\n method: 'POST',\n headers: headerParameters,\n query: queryParameters,\n body: UiAssetCreateRequestToJSON(\n requestParameters['uiAssetCreateRequest'],\n ),\n },\n initOverrides,\n );\n\n return new runtime.VoidApiResponse(response);\n }\n\n /**\n * Creates an asset using the uploaded file as data source.\n * Create an asset from an uploaded file.\n */\n async fileUploadCreateAsset(\n requestParameters: FileUploadCreateAssetRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<void> {\n await this.fileUploadCreateAssetRaw(requestParameters, initOverrides);\n }\n\n /**\n * Requests a Blob URL with a SAS Token so that the UI can directly upload the file to the Azure Blob Storage. Returns the Blob ID / Token.\n * Requests a Blob for file upload.\n */\n async fileUploadRequestSasTokenRaw(\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<string>> {\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n const response = await this.request(\n {\n path: `/wrapper/ee/file-upload/blobs`,\n method: 'POST',\n headers: headerParameters,\n query: queryParameters,\n },\n initOverrides,\n );\n\n if (this.isJsonMime(response.headers.get('content-type'))) {\n return new runtime.JSONApiResponse<string>(response);\n } else {\n return new runtime.TextApiResponse(response) as any;\n }\n }\n\n /**\n * Requests a Blob URL with a SAS Token so that the UI can directly upload the file to the Azure Blob Storage. Returns the Blob ID / Token.\n * Requests a Blob for file upload.\n */\n async fileUploadRequestSasToken(\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<string> {\n const response = await this.fileUploadRequestSasTokenRaw(initOverrides);\n return await response.value();\n }\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport type {\n AssetsPageRequest,\n AssetsPageResult,\n BuildInfo,\n BusinessPartnerGroupCreateSubmit,\n BusinessPartnerGroupEditPage,\n BusinessPartnerGroupEditSubmit,\n BusinessPartnerGroupListPageEntry,\n BusinessPartnerGroupQuery,\n ContractDefinitionPage,\n ContractDefinitionRequest,\n ContractDetailPageResult,\n ContractNegotiationRequest,\n ContractTerminationRequest,\n ContractsPageRequest,\n ContractsPageResult,\n DashboardPage,\n DataOfferCreateRequest,\n IdAvailabilityResponse,\n IdResponseDto,\n InitiateCustomTransferRequest,\n InitiateTransferRequest,\n PolicyDefinitionCreateDto,\n PolicyDefinitionCreateRequest,\n PolicyDefinitionPage,\n TransferHistoryPage,\n UiAsset,\n UiAssetCreateRequest,\n UiAssetEditRequest,\n UiConfig,\n UiContractNegotiation,\n UiDataOffer,\n UiInitiateTransferRequest,\n VaultSecretCreateSubmit,\n VaultSecretEditPage,\n VaultSecretEditSubmit,\n VaultSecretListPageEntry,\n VaultSecretQuery,\n} from '../models/index';\nimport {\n AssetsPageRequestFromJSON,\n AssetsPageRequestToJSON,\n AssetsPageResultFromJSON,\n AssetsPageResultToJSON,\n BuildInfoFromJSON,\n BuildInfoToJSON,\n BusinessPartnerGroupCreateSubmitFromJSON,\n BusinessPartnerGroupCreateSubmitToJSON,\n BusinessPartnerGroupEditPageFromJSON,\n BusinessPartnerGroupEditPageToJSON,\n BusinessPartnerGroupEditSubmitFromJSON,\n BusinessPartnerGroupEditSubmitToJSON,\n BusinessPartnerGroupListPageEntryFromJSON,\n BusinessPartnerGroupListPageEntryToJSON,\n BusinessPartnerGroupQueryFromJSON,\n BusinessPartnerGroupQueryToJSON,\n ContractDefinitionPageFromJSON,\n ContractDefinitionPageToJSON,\n ContractDefinitionRequestFromJSON,\n ContractDefinitionRequestToJSON,\n ContractDetailPageResultFromJSON,\n ContractDetailPageResultToJSON,\n ContractNegotiationRequestFromJSON,\n ContractNegotiationRequestToJSON,\n ContractTerminationRequestFromJSON,\n ContractTerminationRequestToJSON,\n ContractsPageRequestFromJSON,\n ContractsPageRequestToJSON,\n ContractsPageResultFromJSON,\n ContractsPageResultToJSON,\n DashboardPageFromJSON,\n DashboardPageToJSON,\n DataOfferCreateRequestFromJSON,\n DataOfferCreateRequestToJSON,\n IdAvailabilityResponseFromJSON,\n IdAvailabilityResponseToJSON,\n IdResponseDtoFromJSON,\n IdResponseDtoToJSON,\n InitiateCustomTransferRequestFromJSON,\n InitiateCustomTransferRequestToJSON,\n InitiateTransferRequestFromJSON,\n InitiateTransferRequestToJSON,\n PolicyDefinitionCreateDtoFromJSON,\n PolicyDefinitionCreateDtoToJSON,\n PolicyDefinitionCreateRequestFromJSON,\n PolicyDefinitionCreateRequestToJSON,\n PolicyDefinitionPageFromJSON,\n PolicyDefinitionPageToJSON,\n TransferHistoryPageFromJSON,\n TransferHistoryPageToJSON,\n UiAssetCreateRequestFromJSON,\n UiAssetCreateRequestToJSON,\n UiAssetEditRequestFromJSON,\n UiAssetEditRequestToJSON,\n UiAssetFromJSON,\n UiAssetToJSON,\n UiConfigFromJSON,\n UiConfigToJSON,\n UiContractNegotiationFromJSON,\n UiContractNegotiationToJSON,\n UiDataOfferFromJSON,\n UiDataOfferToJSON,\n UiInitiateTransferRequestFromJSON,\n UiInitiateTransferRequestToJSON,\n VaultSecretCreateSubmitFromJSON,\n VaultSecretCreateSubmitToJSON,\n VaultSecretEditPageFromJSON,\n VaultSecretEditPageToJSON,\n VaultSecretEditSubmitFromJSON,\n VaultSecretEditSubmitToJSON,\n VaultSecretListPageEntryFromJSON,\n VaultSecretListPageEntryToJSON,\n VaultSecretQueryFromJSON,\n VaultSecretQueryToJSON,\n} from '../models/index';\nimport * as runtime from '../runtime';\n\nexport interface AssetDetailPageRequest {\n assetId: string;\n}\n\nexport interface AssetsPageOperationRequest {\n assetsPageRequest?: AssetsPageRequest;\n}\n\nexport interface BusinessPartnerGroupCreateSubmitRequest {\n businessPartnerGroupCreateSubmit?: BusinessPartnerGroupCreateSubmit;\n}\n\nexport interface BusinessPartnerGroupEditPageRequest {\n id: string;\n}\n\nexport interface BusinessPartnerGroupEditSubmitRequest {\n id: string;\n businessPartnerGroupEditSubmit?: BusinessPartnerGroupEditSubmit;\n}\n\nexport interface BusinessPartnerGroupListPageRequest {\n businessPartnerGroupQuery?: BusinessPartnerGroupQuery;\n}\n\nexport interface ContractDetailPageRequest {\n contractAgreementId: string;\n}\n\nexport interface ContractsPageOperationRequest {\n contractsPageRequest?: ContractsPageRequest;\n}\n\nexport interface CreateAssetRequest {\n uiAssetCreateRequest?: UiAssetCreateRequest;\n}\n\nexport interface CreateContractDefinitionRequest {\n contractDefinitionRequest?: ContractDefinitionRequest;\n}\n\nexport interface CreateDataOfferRequest {\n dataOfferCreateRequest?: DataOfferCreateRequest;\n}\n\nexport interface CreatePolicyDefinitionRequest {\n policyDefinitionCreateRequest?: PolicyDefinitionCreateRequest;\n}\n\nexport interface CreatePolicyDefinitionV2Request {\n policyDefinitionCreateDto?: PolicyDefinitionCreateDto;\n}\n\nexport interface CreateVaultSecretRequest {\n vaultSecretCreateSubmit?: VaultSecretCreateSubmit;\n}\n\nexport interface DeleteAssetRequest {\n assetId: string;\n}\n\nexport interface DeleteBusinessPartnerGroupRequest {\n id: string;\n}\n\nexport interface DeleteContractDefinitionRequest {\n contractDefinitionId: string;\n}\n\nexport interface DeletePolicyDefinitionRequest {\n policyId: string;\n}\n\nexport interface DeleteVaultSecretRequest {\n key: string;\n}\n\nexport interface EditAssetRequest {\n assetId: string;\n uiAssetEditRequest?: UiAssetEditRequest;\n}\n\nexport interface EditVaultSecretRequest {\n key: string;\n vaultSecretEditSubmit?: VaultSecretEditSubmit;\n}\n\nexport interface EditVaultSecretPageRequest {\n key: string;\n}\n\nexport interface GetCatalogPageDataOfferRequest {\n dataOfferId: string;\n participantId?: string;\n connectorEndpoint?: string;\n}\n\nexport interface GetCatalogPageDataOffersRequest {\n participantId?: string;\n connectorEndpoint?: string;\n}\n\nexport interface GetContractNegotiationRequest {\n contractNegotiationId: string;\n}\n\nexport interface GetTransferProcessAssetRequest {\n transferProcessId: string;\n}\n\nexport interface InitiateContractNegotiationRequest {\n contractNegotiationRequest?: ContractNegotiationRequest;\n}\n\nexport interface InitiateCustomTransferOperationRequest {\n initiateCustomTransferRequest?: InitiateCustomTransferRequest;\n}\n\nexport interface InitiateTransferOperationRequest {\n initiateTransferRequest?: InitiateTransferRequest;\n}\n\nexport interface InitiateTransferV2Request {\n uiInitiateTransferRequest?: UiInitiateTransferRequest;\n}\n\nexport interface IsAssetIdAvailableRequest {\n assetId: string;\n}\n\nexport interface IsContractDefinitionIdAvailableRequest {\n contractDefinitionId: string;\n}\n\nexport interface IsPolicyIdAvailableRequest {\n policyId: string;\n}\n\nexport interface ListVaultSecretsPageRequest {\n vaultSecretQuery?: VaultSecretQuery;\n}\n\nexport interface TerminateContractAgreementRequest {\n contractAgreementId: string;\n contractTerminationRequest?: ContractTerminationRequest;\n}\n\n/**\n *\n */\nexport class UIApi extends runtime.BaseAPI {\n /**\n * Get details for a specific Asset\n */\n async assetDetailPageRaw(\n requestParameters: AssetDetailPageRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<UiAsset>> {\n if (requestParameters['assetId'] == null) {\n throw new runtime.RequiredError(\n 'assetId',\n 'Required parameter \"assetId\" was null or undefined when calling assetDetailPage().',\n );\n }\n\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n const response = await this.request(\n {\n path: `/wrapper/ui/pages/asset-detail-page/{assetId}`.replace(\n `{${'assetId'}}`,\n encodeURIComponent(String(requestParameters['assetId'])),\n ),\n method: 'GET',\n headers: headerParameters,\n query: queryParameters,\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n UiAssetFromJSON(jsonValue),\n );\n }\n\n /**\n * Get details for a specific Asset\n */\n async assetDetailPage(\n requestParameters: AssetDetailPageRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<UiAsset> {\n const response = await this.assetDetailPageRaw(\n requestParameters,\n initOverrides,\n );\n return await response.value();\n }\n\n /**\n * Collect all data for the Assets Page\n */\n async assetsPageRaw(\n requestParameters: AssetsPageOperationRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<AssetsPageResult>> {\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n headerParameters['Content-Type'] = 'application/json';\n\n const response = await this.request(\n {\n path: `/wrapper/ui/pages/assets-page`,\n method: 'POST',\n headers: headerParameters,\n query: queryParameters,\n body: AssetsPageRequestToJSON(\n requestParameters['assetsPageRequest'],\n ),\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n AssetsPageResultFromJSON(jsonValue),\n );\n }\n\n /**\n * Collect all data for the Assets Page\n */\n async assetsPage(\n requestParameters: AssetsPageOperationRequest = {},\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<AssetsPageResult> {\n const response = await this.assetsPageRaw(\n requestParameters,\n initOverrides,\n );\n return await response.value();\n }\n\n /**\n * Get the build version info\n */\n async buildInfoRaw(\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<BuildInfo>> {\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n const response = await this.request(\n {\n path: `/wrapper/ui/build-info`,\n method: 'GET',\n headers: headerParameters,\n query: queryParameters,\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n BuildInfoFromJSON(jsonValue),\n );\n }\n\n /**\n * Get the build version info\n */\n async buildInfo(\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<BuildInfo> {\n const response = await this.buildInfoRaw(initOverrides);\n return await response.value();\n }\n\n /**\n * Create a new Business Partner Group\n */\n async businessPartnerGroupCreateSubmitRaw(\n requestParameters: BusinessPartnerGroupCreateSubmitRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<IdResponseDto>> {\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n headerParameters['Content-Type'] = 'application/json';\n\n const response = await this.request(\n {\n path: `/wrapper/ui/pages/business-partner-groups/create`,\n method: 'POST',\n headers: headerParameters,\n query: queryParameters,\n body: BusinessPartnerGroupCreateSubmitToJSON(\n requestParameters['businessPartnerGroupCreateSubmit'],\n ),\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n IdResponseDtoFromJSON(jsonValue),\n );\n }\n\n /**\n * Create a new Business Partner Group\n */\n async businessPartnerGroupCreateSubmit(\n requestParameters: BusinessPartnerGroupCreateSubmitRequest = {},\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<IdResponseDto> {\n const response = await this.businessPartnerGroupCreateSubmitRaw(\n requestParameters,\n initOverrides,\n );\n return await response.value();\n }\n\n /**\n * Collect all data for the Business Partner Group Edit Page\n */\n async businessPartnerGroupEditPageRaw(\n requestParameters: BusinessPartnerGroupEditPageRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<BusinessPartnerGroupEditPage>> {\n if (requestParameters['id'] == null) {\n throw new runtime.RequiredError(\n 'id',\n 'Required parameter \"id\" was null or undefined when calling businessPartnerGroupEditPage().',\n );\n }\n\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n const response = await this.request(\n {\n path: `/wrapper/ui/pages/business-partner-groups/{id}/edit-page`.replace(\n `{${'id'}}`,\n encodeURIComponent(String(requestParameters['id'])),\n ),\n method: 'GET',\n headers: headerParameters,\n query: queryParameters,\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n BusinessPartnerGroupEditPageFromJSON(jsonValue),\n );\n }\n\n /**\n * Collect all data for the Business Partner Group Edit Page\n */\n async businessPartnerGroupEditPage(\n requestParameters: BusinessPartnerGroupEditPageRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<BusinessPartnerGroupEditPage> {\n const response = await this.businessPartnerGroupEditPageRaw(\n requestParameters,\n initOverrides,\n );\n return await response.value();\n }\n\n /**\n * Edit a Business Partner Group\n */\n async businessPartnerGroupEditSubmitRaw(\n requestParameters: BusinessPartnerGroupEditSubmitRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<IdResponseDto>> {\n if (requestParameters['id'] == null) {\n throw new runtime.RequiredError(\n 'id',\n 'Required parameter \"id\" was null or undefined when calling businessPartnerGroupEditSubmit().',\n );\n }\n\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n headerParameters['Content-Type'] = 'application/json';\n\n const response = await this.request(\n {\n path: `/wrapper/ui/pages/business-partner-groups/{id}/edit-group`.replace(\n `{${'id'}}`,\n encodeURIComponent(String(requestParameters['id'])),\n ),\n method: 'PUT',\n headers: headerParameters,\n query: queryParameters,\n body: BusinessPartnerGroupEditSubmitToJSON(\n requestParameters['businessPartnerGroupEditSubmit'],\n ),\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n IdResponseDtoFromJSON(jsonValue),\n );\n }\n\n /**\n * Edit a Business Partner Group\n */\n async businessPartnerGroupEditSubmit(\n requestParameters: BusinessPartnerGroupEditSubmitRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<IdResponseDto> {\n const response = await this.businessPartnerGroupEditSubmitRaw(\n requestParameters,\n initOverrides,\n );\n return await response.value();\n }\n\n /**\n * Collect all data for the Business Partner Groups List Page\n */\n async businessPartnerGroupListPageRaw(\n requestParameters: BusinessPartnerGroupListPageRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<Array<BusinessPartnerGroupListPageEntry>>> {\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n headerParameters['Content-Type'] = 'application/json';\n\n const response = await this.request(\n {\n path: `/wrapper/ui/pages/business-partner-groups/list-page`,\n method: 'POST',\n headers: headerParameters,\n query: queryParameters,\n body: BusinessPartnerGroupQueryToJSON(\n requestParameters['businessPartnerGroupQuery'],\n ),\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n jsonValue.map(BusinessPartnerGroupListPageEntryFromJSON),\n );\n }\n\n /**\n * Collect all data for the Business Partner Groups List Page\n */\n async businessPartnerGroupListPage(\n requestParameters: BusinessPartnerGroupListPageRequest = {},\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<Array<BusinessPartnerGroupListPageEntry>> {\n const response = await this.businessPartnerGroupListPageRaw(\n requestParameters,\n initOverrides,\n );\n return await response.value();\n }\n\n /**\n * Get a single contract agreement card by its identifier\n */\n async contractDetailPageRaw(\n requestParameters: ContractDetailPageRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<ContractDetailPageResult>> {\n if (requestParameters['contractAgreementId'] == null) {\n throw new runtime.RequiredError(\n 'contractAgreementId',\n 'Required parameter \"contractAgreementId\" was null or undefined when calling contractDetailPage().',\n );\n }\n\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n const response = await this.request(\n {\n path: `/wrapper/ui/pages/contract-detail-page/{contractAgreementId}`.replace(\n `{${'contractAgreementId'}}`,\n encodeURIComponent(\n String(requestParameters['contractAgreementId']),\n ),\n ),\n method: 'GET',\n headers: headerParameters,\n query: queryParameters,\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n ContractDetailPageResultFromJSON(jsonValue),\n );\n }\n\n /**\n * Get a single contract agreement card by its identifier\n */\n async contractDetailPage(\n requestParameters: ContractDetailPageRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<ContractDetailPageResult> {\n const response = await this.contractDetailPageRaw(\n requestParameters,\n initOverrides,\n );\n return await response.value();\n }\n\n /**\n * Collect filtered data for the Contract Agreement Table Page\n */\n async contractsPageRaw(\n requestParameters: ContractsPageOperationRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<ContractsPageResult>> {\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n headerParameters['Content-Type'] = 'application/json';\n\n const response = await this.request(\n {\n path: `/wrapper/ui/pages/contracts-page`,\n method: 'POST',\n headers: headerParameters,\n query: queryParameters,\n body: ContractsPageRequestToJSON(\n requestParameters['contractsPageRequest'],\n ),\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n ContractsPageResultFromJSON(jsonValue),\n );\n }\n\n /**\n * Collect filtered data for the Contract Agreement Table Page\n */\n async contractsPage(\n requestParameters: ContractsPageOperationRequest = {},\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<ContractsPageResult> {\n const response = await this.contractsPageRaw(\n requestParameters,\n initOverrides,\n );\n return await response.value();\n }\n\n /**\n * Create a new Asset\n */\n async createAssetRaw(\n requestParameters: CreateAssetRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<IdResponseDto>> {\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n headerParameters['Content-Type'] = 'application/json';\n\n const response = await this.request(\n {\n path: `/wrapper/ui/pages/asset-page/assets`,\n method: 'POST',\n headers: headerParameters,\n query: queryParameters,\n body: UiAssetCreateRequestToJSON(\n requestParameters['uiAssetCreateRequest'],\n ),\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n IdResponseDtoFromJSON(jsonValue),\n );\n }\n\n /**\n * Create a new Asset\n */\n async createAsset(\n requestParameters: CreateAssetRequest = {},\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<IdResponseDto> {\n const response = await this.createAssetRaw(\n requestParameters,\n initOverrides,\n );\n return await response.value();\n }\n\n /**\n * Create a new Contract Definition. Use [publishDataOffer] instead.\n * @deprecated\n */\n async createContractDefinitionRaw(\n requestParameters: CreateContractDefinitionRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<IdResponseDto>> {\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n headerParameters['Content-Type'] = 'application/json';\n\n const response = await this.request(\n {\n path: `/wrapper/ui/pages/contract-definition-page/contract-definitions`,\n method: 'POST',\n headers: headerParameters,\n query: queryParameters,\n body: ContractDefinitionRequestToJSON(\n requestParameters['contractDefinitionRequest'],\n ),\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n IdResponseDtoFromJSON(jsonValue),\n );\n }\n\n /**\n * Create a new Contract Definition. Use [publishDataOffer] instead.\n * @deprecated\n */\n async createContractDefinition(\n requestParameters: CreateContractDefinitionRequest = {},\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<IdResponseDto> {\n const response = await this.createContractDefinitionRaw(\n requestParameters,\n initOverrides,\n );\n return await response.value();\n }\n\n /**\n * Create a new asset, contract definition and optional policies. Uses the same id for the asset, the contract policy, the access policy and the contract definition\n */\n async createDataOfferRaw(\n requestParameters: CreateDataOfferRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<IdResponseDto>> {\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n headerParameters['Content-Type'] = 'application/json';\n\n const response = await this.request(\n {\n path: `/wrapper/ui/pages/create-data-offer`,\n method: 'POST',\n headers: headerParameters,\n query: queryParameters,\n body: DataOfferCreateRequestToJSON(\n requestParameters['dataOfferCreateRequest'],\n ),\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n IdResponseDtoFromJSON(jsonValue),\n );\n }\n\n /**\n * Create a new asset, contract definition and optional policies. Uses the same id for the asset, the contract policy, the access policy and the contract definition\n */\n async createDataOffer(\n requestParameters: CreateDataOfferRequest = {},\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<IdResponseDto> {\n const response = await this.createDataOfferRaw(\n requestParameters,\n initOverrides,\n );\n return await response.value();\n }\n\n /**\n * [Deprecated] Create a new Policy Definition from a list of constraints. Use createPolicyDefinitionV2 instead.\n * @deprecated\n */\n async createPolicyDefinitionRaw(\n requestParameters: CreatePolicyDefinitionRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<IdResponseDto>> {\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n headerParameters['Content-Type'] = 'application/json';\n\n const response = await this.request(\n {\n path: `/wrapper/ui/pages/policy-page/policy-definitions`,\n method: 'POST',\n headers: headerParameters,\n query: queryParameters,\n body: PolicyDefinitionCreateRequestToJSON(\n requestParameters['policyDefinitionCreateRequest'],\n ),\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n IdResponseDtoFromJSON(jsonValue),\n );\n }\n\n /**\n * [Deprecated] Create a new Policy Definition from a list of constraints. Use createPolicyDefinitionV2 instead.\n * @deprecated\n */\n async createPolicyDefinition(\n requestParameters: CreatePolicyDefinitionRequest = {},\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<IdResponseDto> {\n const response = await this.createPolicyDefinitionRaw(\n requestParameters,\n initOverrides,\n );\n return await response.value();\n }\n\n /**\n * Create a new Policy Definition\n */\n async createPolicyDefinitionV2Raw(\n requestParameters: CreatePolicyDefinitionV2Request,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<IdResponseDto>> {\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n headerParameters['Content-Type'] = 'application/json';\n\n const response = await this.request(\n {\n path: `/wrapper/ui/v2/pages/policy-page/policy-definitions`,\n method: 'POST',\n headers: headerParameters,\n query: queryParameters,\n body: PolicyDefinitionCreateDtoToJSON(\n requestParameters['policyDefinitionCreateDto'],\n ),\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n IdResponseDtoFromJSON(jsonValue),\n );\n }\n\n /**\n * Create a new Policy Definition\n */\n async createPolicyDefinitionV2(\n requestParameters: CreatePolicyDefinitionV2Request = {},\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<IdResponseDto> {\n const response = await this.createPolicyDefinitionV2Raw(\n requestParameters,\n initOverrides,\n );\n return await response.value();\n }\n\n /**\n * Create a new Vault Secret\n */\n async createVaultSecretRaw(\n requestParameters: CreateVaultSecretRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<IdResponseDto>> {\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n headerParameters['Content-Type'] = 'application/json';\n\n const response = await this.request(\n {\n path: `/wrapper/ui/pages/vault-secrets/create-secret`,\n method: 'POST',\n headers: headerParameters,\n query: queryParameters,\n body: VaultSecretCreateSubmitToJSON(\n requestParameters['vaultSecretCreateSubmit'],\n ),\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n IdResponseDtoFromJSON(jsonValue),\n );\n }\n\n /**\n * Create a new Vault Secret\n */\n async createVaultSecret(\n requestParameters: CreateVaultSecretRequest = {},\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<IdResponseDto> {\n const response = await this.createVaultSecretRaw(\n requestParameters,\n initOverrides,\n );\n return await response.value();\n }\n\n /**\n * Delete an Asset\n */\n async deleteAssetRaw(\n requestParameters: DeleteAssetRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<IdResponseDto>> {\n if (requestParameters['assetId'] == null) {\n throw new runtime.RequiredError(\n 'assetId',\n 'Required parameter \"assetId\" was null or undefined when calling deleteAsset().',\n );\n }\n\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n const response = await this.request(\n {\n path: `/wrapper/ui/pages/asset-page/assets/{assetId}`.replace(\n `{${'assetId'}}`,\n encodeURIComponent(String(requestParameters['assetId'])),\n ),\n method: 'DELETE',\n headers: headerParameters,\n query: queryParameters,\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n IdResponseDtoFromJSON(jsonValue),\n );\n }\n\n /**\n * Delete an Asset\n */\n async deleteAsset(\n requestParameters: DeleteAssetRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<IdResponseDto> {\n const response = await this.deleteAssetRaw(\n requestParameters,\n initOverrides,\n );\n return await response.value();\n }\n\n /**\n * Delete a Business Partner Group\n */\n async deleteBusinessPartnerGroupRaw(\n requestParameters: DeleteBusinessPartnerGroupRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<IdResponseDto>> {\n if (requestParameters['id'] == null) {\n throw new runtime.RequiredError(\n 'id',\n 'Required parameter \"id\" was null or undefined when calling deleteBusinessPartnerGroup().',\n );\n }\n\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n const response = await this.request(\n {\n path: `/wrapper/ui/pages/business-partner-groups/{id}`.replace(\n `{${'id'}}`,\n encodeURIComponent(String(requestParameters['id'])),\n ),\n method: 'DELETE',\n headers: headerParameters,\n query: queryParameters,\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n IdResponseDtoFromJSON(jsonValue),\n );\n }\n\n /**\n * Delete a Business Partner Group\n */\n async deleteBusinessPartnerGroup(\n requestParameters: DeleteBusinessPartnerGroupRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<IdResponseDto> {\n const response = await this.deleteBusinessPartnerGroupRaw(\n requestParameters,\n initOverrides,\n );\n return await response.value();\n }\n\n /**\n * Delete a Contract Definition\n */\n async deleteContractDefinitionRaw(\n requestParameters: DeleteContractDefinitionRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<IdResponseDto>> {\n if (requestParameters['contractDefinitionId'] == null) {\n throw new runtime.RequiredError(\n 'contractDefinitionId',\n 'Required parameter \"contractDefinitionId\" was null or undefined when calling deleteContractDefinition().',\n );\n }\n\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n const response = await this.request(\n {\n path: `/wrapper/ui/pages/contract-definition-page/contract-definitions/{contractDefinitionId}`.replace(\n `{${'contractDefinitionId'}}`,\n encodeURIComponent(\n String(requestParameters['contractDefinitionId']),\n ),\n ),\n method: 'DELETE',\n headers: headerParameters,\n query: queryParameters,\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n IdResponseDtoFromJSON(jsonValue),\n );\n }\n\n /**\n * Delete a Contract Definition\n */\n async deleteContractDefinition(\n requestParameters: DeleteContractDefinitionRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<IdResponseDto> {\n const response = await this.deleteContractDefinitionRaw(\n requestParameters,\n initOverrides,\n );\n return await response.value();\n }\n\n /**\n * Delete a Policy Definition\n */\n async deletePolicyDefinitionRaw(\n requestParameters: DeletePolicyDefinitionRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<IdResponseDto>> {\n if (requestParameters['policyId'] == null) {\n throw new runtime.RequiredError(\n 'policyId',\n 'Required parameter \"policyId\" was null or undefined when calling deletePolicyDefinition().',\n );\n }\n\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n const response = await this.request(\n {\n path: `/wrapper/ui/pages/policy-page/policy-definitions/{policyId}`.replace(\n `{${'policyId'}}`,\n encodeURIComponent(String(requestParameters['policyId'])),\n ),\n method: 'DELETE',\n headers: headerParameters,\n query: queryParameters,\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n IdResponseDtoFromJSON(jsonValue),\n );\n }\n\n /**\n * Delete a Policy Definition\n */\n async deletePolicyDefinition(\n requestParameters: DeletePolicyDefinitionRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<IdResponseDto> {\n const response = await this.deletePolicyDefinitionRaw(\n requestParameters,\n initOverrides,\n );\n return await response.value();\n }\n\n /**\n * Delete a vault secret\n */\n async deleteVaultSecretRaw(\n requestParameters: DeleteVaultSecretRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<IdResponseDto>> {\n if (requestParameters['key'] == null) {\n throw new runtime.RequiredError(\n 'key',\n 'Required parameter \"key\" was null or undefined when calling deleteVaultSecret().',\n );\n }\n\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n const response = await this.request(\n {\n path: `/wrapper/ui/pages/vault-secrets/{key}`.replace(\n `{${'key'}}`,\n encodeURIComponent(String(requestParameters['key'])),\n ),\n method: 'DELETE',\n headers: headerParameters,\n query: queryParameters,\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n IdResponseDtoFromJSON(jsonValue),\n );\n }\n\n /**\n * Delete a vault secret\n */\n async deleteVaultSecret(\n requestParameters: DeleteVaultSecretRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<IdResponseDto> {\n const response = await this.deleteVaultSecretRaw(\n requestParameters,\n initOverrides,\n );\n return await response.value();\n }\n\n /**\n * Updates an Asset\\'s metadata and optionally also the data source.\n */\n async editAssetRaw(\n requestParameters: EditAssetRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<IdResponseDto>> {\n if (requestParameters['assetId'] == null) {\n throw new runtime.RequiredError(\n 'assetId',\n 'Required parameter \"assetId\" was null or undefined when calling editAsset().',\n );\n }\n\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n headerParameters['Content-Type'] = 'application/json';\n\n const response = await this.request(\n {\n path: `/wrapper/ui/pages/asset-page/assets/{assetId}`.replace(\n `{${'assetId'}}`,\n encodeURIComponent(String(requestParameters['assetId'])),\n ),\n method: 'PUT',\n headers: headerParameters,\n query: queryParameters,\n body: UiAssetEditRequestToJSON(\n requestParameters['uiAssetEditRequest'],\n ),\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n IdResponseDtoFromJSON(jsonValue),\n );\n }\n\n /**\n * Updates an Asset\\'s metadata and optionally also the data source.\n */\n async editAsset(\n requestParameters: EditAssetRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<IdResponseDto> {\n const response = await this.editAssetRaw(\n requestParameters,\n initOverrides,\n );\n return await response.value();\n }\n\n /**\n * Edit an existing vault secret\n */\n async editVaultSecretRaw(\n requestParameters: EditVaultSecretRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<IdResponseDto>> {\n if (requestParameters['key'] == null) {\n throw new runtime.RequiredError(\n 'key',\n 'Required parameter \"key\" was null or undefined when calling editVaultSecret().',\n );\n }\n\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n headerParameters['Content-Type'] = 'application/json';\n\n const response = await this.request(\n {\n path: `/wrapper/ui/pages/vault-secrets/{key}/edit-secret`.replace(\n `{${'key'}}`,\n encodeURIComponent(String(requestParameters['key'])),\n ),\n method: 'PUT',\n headers: headerParameters,\n query: queryParameters,\n body: VaultSecretEditSubmitToJSON(\n requestParameters['vaultSecretEditSubmit'],\n ),\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n IdResponseDtoFromJSON(jsonValue),\n );\n }\n\n /**\n * Edit an existing vault secret\n */\n async editVaultSecret(\n requestParameters: EditVaultSecretRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<IdResponseDto> {\n const response = await this.editVaultSecretRaw(\n requestParameters,\n initOverrides,\n );\n return await response.value();\n }\n\n /**\n * Collect all data for the Edit Vault Secret Page\n */\n async editVaultSecretPageRaw(\n requestParameters: EditVaultSecretPageRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<VaultSecretEditPage>> {\n if (requestParameters['key'] == null) {\n throw new runtime.RequiredError(\n 'key',\n 'Required parameter \"key\" was null or undefined when calling editVaultSecretPage().',\n );\n }\n\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n const response = await this.request(\n {\n path: `/wrapper/ui/pages/vault-secrets/{key}/edit-secret`.replace(\n `{${'key'}}`,\n encodeURIComponent(String(requestParameters['key'])),\n ),\n method: 'GET',\n headers: headerParameters,\n query: queryParameters,\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n VaultSecretEditPageFromJSON(jsonValue),\n );\n }\n\n /**\n * Collect all data for the Edit Vault Secret Page\n */\n async editVaultSecretPage(\n requestParameters: EditVaultSecretPageRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<VaultSecretEditPage> {\n const response = await this.editVaultSecretPageRaw(\n requestParameters,\n initOverrides,\n );\n return await response.value();\n }\n\n /**\n * Fetch a specific data offer from a connector\n */\n async getCatalogPageDataOfferRaw(\n requestParameters: GetCatalogPageDataOfferRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<UiDataOffer>> {\n if (requestParameters['dataOfferId'] == null) {\n throw new runtime.RequiredError(\n 'dataOfferId',\n 'Required parameter \"dataOfferId\" was null or undefined when calling getCatalogPageDataOffer().',\n );\n }\n\n const queryParameters: any = {};\n\n if (requestParameters['participantId'] != null) {\n queryParameters['participantId'] =\n requestParameters['participantId'];\n }\n\n if (requestParameters['connectorEndpoint'] != null) {\n queryParameters['connectorEndpoint'] =\n requestParameters['connectorEndpoint'];\n }\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n const response = await this.request(\n {\n path: `/wrapper/ui/pages/catalog-page/data-offers/{dataOfferId}`.replace(\n `{${'dataOfferId'}}`,\n encodeURIComponent(\n String(requestParameters['dataOfferId']),\n ),\n ),\n method: 'GET',\n headers: headerParameters,\n query: queryParameters,\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n UiDataOfferFromJSON(jsonValue),\n );\n }\n\n /**\n * Fetch a specific data offer from a connector\n */\n async getCatalogPageDataOffer(\n requestParameters: GetCatalogPageDataOfferRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<UiDataOffer> {\n const response = await this.getCatalogPageDataOfferRaw(\n requestParameters,\n initOverrides,\n );\n return await response.value();\n }\n\n /**\n * Fetch a connector\\'s data offers\n */\n async getCatalogPageDataOffersRaw(\n requestParameters: GetCatalogPageDataOffersRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<Array<UiDataOffer>>> {\n const queryParameters: any = {};\n\n if (requestParameters['participantId'] != null) {\n queryParameters['participantId'] =\n requestParameters['participantId'];\n }\n\n if (requestParameters['connectorEndpoint'] != null) {\n queryParameters['connectorEndpoint'] =\n requestParameters['connectorEndpoint'];\n }\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n const response = await this.request(\n {\n path: `/wrapper/ui/pages/catalog-page/data-offers`,\n method: 'GET',\n headers: headerParameters,\n query: queryParameters,\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n jsonValue.map(UiDataOfferFromJSON),\n );\n }\n\n /**\n * Fetch a connector\\'s data offers\n */\n async getCatalogPageDataOffers(\n requestParameters: GetCatalogPageDataOffersRequest = {},\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<Array<UiDataOffer>> {\n const response = await this.getCatalogPageDataOffersRaw(\n requestParameters,\n initOverrides,\n );\n return await response.value();\n }\n\n /**\n * Collect all data for Contract Definition Page\n * @deprecated\n */\n async getContractDefinitionPageRaw(\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<ContractDefinitionPage>> {\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n const response = await this.request(\n {\n path: `/wrapper/ui/pages/contract-definition-page`,\n method: 'GET',\n headers: headerParameters,\n query: queryParameters,\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n ContractDefinitionPageFromJSON(jsonValue),\n );\n }\n\n /**\n * Collect all data for Contract Definition Page\n * @deprecated\n */\n async getContractDefinitionPage(\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<ContractDefinitionPage> {\n const response = await this.getContractDefinitionPageRaw(initOverrides);\n return await response.value();\n }\n\n /**\n * Get Contract Negotiation Information\n */\n async getContractNegotiationRaw(\n requestParameters: GetContractNegotiationRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<UiContractNegotiation>> {\n if (requestParameters['contractNegotiationId'] == null) {\n throw new runtime.RequiredError(\n 'contractNegotiationId',\n 'Required parameter \"contractNegotiationId\" was null or undefined when calling getContractNegotiation().',\n );\n }\n\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n const response = await this.request(\n {\n path: `/wrapper/ui/pages/catalog-page/contract-negotiations/{contractNegotiationId}`.replace(\n `{${'contractNegotiationId'}}`,\n encodeURIComponent(\n String(requestParameters['contractNegotiationId']),\n ),\n ),\n method: 'GET',\n headers: headerParameters,\n query: queryParameters,\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n UiContractNegotiationFromJSON(jsonValue),\n );\n }\n\n /**\n * Get Contract Negotiation Information\n */\n async getContractNegotiation(\n requestParameters: GetContractNegotiationRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<UiContractNegotiation> {\n const response = await this.getContractNegotiationRaw(\n requestParameters,\n initOverrides,\n );\n return await response.value();\n }\n\n /**\n * Collect all data for the Dashboard Page\n */\n async getDashboardPageRaw(\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<DashboardPage>> {\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n const response = await this.request(\n {\n path: `/wrapper/ui/pages/dashboard-page`,\n method: 'GET',\n headers: headerParameters,\n query: queryParameters,\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n DashboardPageFromJSON(jsonValue),\n );\n }\n\n /**\n * Collect all data for the Dashboard Page\n */\n async getDashboardPage(\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<DashboardPage> {\n const response = await this.getDashboardPageRaw(initOverrides);\n return await response.value();\n }\n\n /**\n * Collect all data for Policy Definition Page\n */\n async getPolicyDefinitionPageRaw(\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<PolicyDefinitionPage>> {\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n const response = await this.request(\n {\n path: `/wrapper/ui/pages/policy-page`,\n method: 'GET',\n headers: headerParameters,\n query: queryParameters,\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n PolicyDefinitionPageFromJSON(jsonValue),\n );\n }\n\n /**\n * Collect all data for Policy Definition Page\n */\n async getPolicyDefinitionPage(\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<PolicyDefinitionPage> {\n const response = await this.getPolicyDefinitionPageRaw(initOverrides);\n return await response.value();\n }\n\n /**\n * Collect all data for the Transfer History Page\n */\n async getTransferHistoryPageRaw(\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<TransferHistoryPage>> {\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n const response = await this.request(\n {\n path: `/wrapper/ui/pages/transfer-history-page`,\n method: 'GET',\n headers: headerParameters,\n query: queryParameters,\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n TransferHistoryPageFromJSON(jsonValue),\n );\n }\n\n /**\n * Collect all data for the Transfer History Page\n */\n async getTransferHistoryPage(\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<TransferHistoryPage> {\n const response = await this.getTransferHistoryPageRaw(initOverrides);\n return await response.value();\n }\n\n /**\n * Queries a transfer process\\' asset\n */\n async getTransferProcessAssetRaw(\n requestParameters: GetTransferProcessAssetRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<UiAsset>> {\n if (requestParameters['transferProcessId'] == null) {\n throw new runtime.RequiredError(\n 'transferProcessId',\n 'Required parameter \"transferProcessId\" was null or undefined when calling getTransferProcessAsset().',\n );\n }\n\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n const response = await this.request(\n {\n path: `/wrapper/ui/pages/transfer-history-page/transfer-processes/{transferProcessId}/asset`.replace(\n `{${'transferProcessId'}}`,\n encodeURIComponent(\n String(requestParameters['transferProcessId']),\n ),\n ),\n method: 'GET',\n headers: headerParameters,\n query: queryParameters,\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n UiAssetFromJSON(jsonValue),\n );\n }\n\n /**\n * Queries a transfer process\\' asset\n */\n async getTransferProcessAsset(\n requestParameters: GetTransferProcessAssetRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<UiAsset> {\n const response = await this.getTransferProcessAssetRaw(\n requestParameters,\n initOverrides,\n );\n return await response.value();\n }\n\n /**\n * Initiate a new Contract Negotiation\n */\n async initiateContractNegotiationRaw(\n requestParameters: InitiateContractNegotiationRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<UiContractNegotiation>> {\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n headerParameters['Content-Type'] = 'application/json';\n\n const response = await this.request(\n {\n path: `/wrapper/ui/pages/catalog-page/contract-negotiations`,\n method: 'POST',\n headers: headerParameters,\n query: queryParameters,\n body: ContractNegotiationRequestToJSON(\n requestParameters['contractNegotiationRequest'],\n ),\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n UiContractNegotiationFromJSON(jsonValue),\n );\n }\n\n /**\n * Initiate a new Contract Negotiation\n */\n async initiateContractNegotiation(\n requestParameters: InitiateContractNegotiationRequest = {},\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<UiContractNegotiation> {\n const response = await this.initiateContractNegotiationRaw(\n requestParameters,\n initOverrides,\n );\n return await response.value();\n }\n\n /**\n * Initiate a Transfer Process via a custom Transfer Process JSON-LD. Fields such as connectorId, assetId, providerConnectorId, providerConnectorAddress will be set automatically.\n */\n async initiateCustomTransferRaw(\n requestParameters: InitiateCustomTransferOperationRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<IdResponseDto>> {\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n headerParameters['Content-Type'] = 'application/json';\n\n const response = await this.request(\n {\n path: `/wrapper/ui/pages/contract-agreement-page/transfers/custom`,\n method: 'POST',\n headers: headerParameters,\n query: queryParameters,\n body: InitiateCustomTransferRequestToJSON(\n requestParameters['initiateCustomTransferRequest'],\n ),\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n IdResponseDtoFromJSON(jsonValue),\n );\n }\n\n /**\n * Initiate a Transfer Process via a custom Transfer Process JSON-LD. Fields such as connectorId, assetId, providerConnectorId, providerConnectorAddress will be set automatically.\n */\n async initiateCustomTransfer(\n requestParameters: InitiateCustomTransferOperationRequest = {},\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<IdResponseDto> {\n const response = await this.initiateCustomTransferRaw(\n requestParameters,\n initOverrides,\n );\n return await response.value();\n }\n\n /**\n * Initiate a Transfer Process. Deprecated. Use initiateTransferV2 instead\n * @deprecated\n */\n async initiateTransferRaw(\n requestParameters: InitiateTransferOperationRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<IdResponseDto>> {\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n headerParameters['Content-Type'] = 'application/json';\n\n const response = await this.request(\n {\n path: `/wrapper/ui/pages/contract-agreement-page/transfers`,\n method: 'POST',\n headers: headerParameters,\n query: queryParameters,\n body: InitiateTransferRequestToJSON(\n requestParameters['initiateTransferRequest'],\n ),\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n IdResponseDtoFromJSON(jsonValue),\n );\n }\n\n /**\n * Initiate a Transfer Process. Deprecated. Use initiateTransferV2 instead\n * @deprecated\n */\n async initiateTransfer(\n requestParameters: InitiateTransferOperationRequest = {},\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<IdResponseDto> {\n const response = await this.initiateTransferRaw(\n requestParameters,\n initOverrides,\n );\n return await response.value();\n }\n\n /**\n * Initiate a Transfer Process. V2 Endpoint with support for Callback Addresses and well-typed data sinks\n */\n async initiateTransferV2Raw(\n requestParameters: InitiateTransferV2Request,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<IdResponseDto>> {\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n headerParameters['Content-Type'] = 'application/json';\n\n const response = await this.request(\n {\n path: `/wrapper/ui/pages/contract-agreement-page/initiate-transfer-v2`,\n method: 'POST',\n headers: headerParameters,\n query: queryParameters,\n body: UiInitiateTransferRequestToJSON(\n requestParameters['uiInitiateTransferRequest'],\n ),\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n IdResponseDtoFromJSON(jsonValue),\n );\n }\n\n /**\n * Initiate a Transfer Process. V2 Endpoint with support for Callback Addresses and well-typed data sinks\n */\n async initiateTransferV2(\n requestParameters: InitiateTransferV2Request = {},\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<IdResponseDto> {\n const response = await this.initiateTransferV2Raw(\n requestParameters,\n initOverrides,\n );\n return await response.value();\n }\n\n /**\n * Validates if the provided assetId is already taken\n */\n async isAssetIdAvailableRaw(\n requestParameters: IsAssetIdAvailableRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<IdAvailabilityResponse>> {\n if (requestParameters['assetId'] == null) {\n throw new runtime.RequiredError(\n 'assetId',\n 'Required parameter \"assetId\" was null or undefined when calling isAssetIdAvailable().',\n );\n }\n\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n const response = await this.request(\n {\n path: `/wrapper/ui/pages/data-offer-page/validate-asset-id/{assetId}`.replace(\n `{${'assetId'}}`,\n encodeURIComponent(String(requestParameters['assetId'])),\n ),\n method: 'GET',\n headers: headerParameters,\n query: queryParameters,\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n IdAvailabilityResponseFromJSON(jsonValue),\n );\n }\n\n /**\n * Validates if the provided assetId is already taken\n */\n async isAssetIdAvailable(\n requestParameters: IsAssetIdAvailableRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<IdAvailabilityResponse> {\n const response = await this.isAssetIdAvailableRaw(\n requestParameters,\n initOverrides,\n );\n return await response.value();\n }\n\n /**\n * Validates if the provided contractDefinitionId is already taken\n */\n async isContractDefinitionIdAvailableRaw(\n requestParameters: IsContractDefinitionIdAvailableRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<IdAvailabilityResponse>> {\n if (requestParameters['contractDefinitionId'] == null) {\n throw new runtime.RequiredError(\n 'contractDefinitionId',\n 'Required parameter \"contractDefinitionId\" was null or undefined when calling isContractDefinitionIdAvailable().',\n );\n }\n\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n const response = await this.request(\n {\n path: `/wrapper/ui/pages/data-offer-page/validate-contract-definition-id/{contractDefinitionId}`.replace(\n `{${'contractDefinitionId'}}`,\n encodeURIComponent(\n String(requestParameters['contractDefinitionId']),\n ),\n ),\n method: 'GET',\n headers: headerParameters,\n query: queryParameters,\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n IdAvailabilityResponseFromJSON(jsonValue),\n );\n }\n\n /**\n * Validates if the provided contractDefinitionId is already taken\n */\n async isContractDefinitionIdAvailable(\n requestParameters: IsContractDefinitionIdAvailableRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<IdAvailabilityResponse> {\n const response = await this.isContractDefinitionIdAvailableRaw(\n requestParameters,\n initOverrides,\n );\n return await response.value();\n }\n\n /**\n * Validates if the provided policyId is already taken\n */\n async isPolicyIdAvailableRaw(\n requestParameters: IsPolicyIdAvailableRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<IdAvailabilityResponse>> {\n if (requestParameters['policyId'] == null) {\n throw new runtime.RequiredError(\n 'policyId',\n 'Required parameter \"policyId\" was null or undefined when calling isPolicyIdAvailable().',\n );\n }\n\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n const response = await this.request(\n {\n path: `/wrapper/ui/pages/data-offer-page/validate-policy-id/{policyId}`.replace(\n `{${'policyId'}}`,\n encodeURIComponent(String(requestParameters['policyId'])),\n ),\n method: 'GET',\n headers: headerParameters,\n query: queryParameters,\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n IdAvailabilityResponseFromJSON(jsonValue),\n );\n }\n\n /**\n * Validates if the provided policyId is already taken\n */\n async isPolicyIdAvailable(\n requestParameters: IsPolicyIdAvailableRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<IdAvailabilityResponse> {\n const response = await this.isPolicyIdAvailableRaw(\n requestParameters,\n initOverrides,\n );\n return await response.value();\n }\n\n /**\n * Collect all data for the Vault Secrets List Page\n */\n async listVaultSecretsPageRaw(\n requestParameters: ListVaultSecretsPageRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<Array<VaultSecretListPageEntry>>> {\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n headerParameters['Content-Type'] = 'application/json';\n\n const response = await this.request(\n {\n path: `/wrapper/ui/pages/vault-secrets/list-page`,\n method: 'POST',\n headers: headerParameters,\n query: queryParameters,\n body: VaultSecretQueryToJSON(\n requestParameters['vaultSecretQuery'],\n ),\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n jsonValue.map(VaultSecretListPageEntryFromJSON),\n );\n }\n\n /**\n * Collect all data for the Vault Secrets List Page\n */\n async listVaultSecretsPage(\n requestParameters: ListVaultSecretsPageRequest = {},\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<Array<VaultSecretListPageEntry>> {\n const response = await this.listVaultSecretsPageRaw(\n requestParameters,\n initOverrides,\n );\n return await response.value();\n }\n\n /**\n * Terminates a contract agreement designated by its contract agreement id.\n */\n async terminateContractAgreementRaw(\n requestParameters: TerminateContractAgreementRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<IdResponseDto>> {\n if (requestParameters['contractAgreementId'] == null) {\n throw new runtime.RequiredError(\n 'contractAgreementId',\n 'Required parameter \"contractAgreementId\" was null or undefined when calling terminateContractAgreement().',\n );\n }\n\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n headerParameters['Content-Type'] = 'application/json';\n\n const response = await this.request(\n {\n path: `/wrapper/ui/pages/content-agreement-page/{contractAgreementId}/terminate`.replace(\n `{${'contractAgreementId'}}`,\n encodeURIComponent(\n String(requestParameters['contractAgreementId']),\n ),\n ),\n method: 'POST',\n headers: headerParameters,\n query: queryParameters,\n body: ContractTerminationRequestToJSON(\n requestParameters['contractTerminationRequest'],\n ),\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n IdResponseDtoFromJSON(jsonValue),\n );\n }\n\n /**\n * Terminates a contract agreement designated by its contract agreement id.\n */\n async terminateContractAgreement(\n requestParameters: TerminateContractAgreementRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<IdResponseDto> {\n const response = await this.terminateContractAgreementRaw(\n requestParameters,\n initOverrides,\n );\n return await response.value();\n }\n\n /**\n * Get the UI configuration\n */\n async uiConfigRaw(\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<UiConfig>> {\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n const response = await this.request(\n {\n path: `/wrapper/ui/config`,\n method: 'GET',\n headers: headerParameters,\n query: queryParameters,\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n UiConfigFromJSON(jsonValue),\n );\n }\n\n /**\n * Get the UI configuration\n */\n async uiConfig(\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<UiConfig> {\n const response = await this.uiConfigRaw(initOverrides);\n return await response.value();\n }\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n\n/* eslint-disable */\n\n/**\n * sovity EDC API Wrapper\n * sovity\\'s EDC API Wrapper contains a selection of APIs for multiple consumers, e.g. our EDC UI API, our generic Use Case API, our Commercial Edition APIs, etc. We bundled these APIs, so we can have an easier time generating our API Client Libraries.\n *\n * The version of the OpenAPI document: 0.0.0\n * Contact: contact@sovity.de\n *\n * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).\n * https://openapi-generator.tech\n * Do not edit the class manually.\n */\nimport type {\n CatalogQuery,\n CatalogQueryV2,\n ContractNegotiationStateResult,\n EdrDto,\n IdResponseDto,\n KpiResult,\n NegotiateAllQuery,\n NegotiateAllResult,\n TransferProcessStateResult,\n UiAsset,\n UiDataOffer,\n} from '../models/index';\nimport {\n CatalogQueryFromJSON,\n CatalogQueryToJSON,\n CatalogQueryV2FromJSON,\n CatalogQueryV2ToJSON,\n ContractNegotiationStateResultFromJSON,\n ContractNegotiationStateResultToJSON,\n EdrDtoFromJSON,\n EdrDtoToJSON,\n IdResponseDtoFromJSON,\n IdResponseDtoToJSON,\n KpiResultFromJSON,\n KpiResultToJSON,\n NegotiateAllQueryFromJSON,\n NegotiateAllQueryToJSON,\n NegotiateAllResultFromJSON,\n NegotiateAllResultToJSON,\n TransferProcessStateResultFromJSON,\n TransferProcessStateResultToJSON,\n UiAssetFromJSON,\n UiAssetToJSON,\n UiDataOfferFromJSON,\n UiDataOfferToJSON,\n} from '../models/index';\nimport * as runtime from '../runtime';\n\nexport interface GetContractNegotiationStatesRequest {\n requestBody: Array<string>;\n}\n\nexport interface GetTransferProcessEdrRequest {\n transferId: string;\n}\n\nexport interface GetTransferProcessStatesRequest {\n requestBody: Array<string>;\n}\n\nexport interface NegotiateAllRequest {\n negotiateAllQuery: NegotiateAllQuery;\n}\n\nexport interface QueryCatalogRequest {\n catalogQuery: CatalogQuery;\n}\n\nexport interface QueryCatalogV2Request {\n catalogQueryV2: CatalogQueryV2;\n}\n\nexport interface TerminateTransferProcessRequest {\n transferId: string;\n}\n\n/**\n *\n */\nexport class UseCaseApi extends runtime.BaseAPI {\n /**\n * List all assets in the connector.\n */\n async getAssetsRaw(\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<Array<UiAsset>>> {\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n const response = await this.request(\n {\n path: `/wrapper/use-case-api/assets`,\n method: 'GET',\n headers: headerParameters,\n query: queryParameters,\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n jsonValue.map(UiAssetFromJSON),\n );\n }\n\n /**\n * List all assets in the connector.\n */\n async getAssets(\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<Array<UiAsset>> {\n const response = await this.getAssetsRaw(initOverrides);\n return await response.value();\n }\n\n /**\n * Fetch contract negotiation states as batch\n */\n async getContractNegotiationStatesRaw(\n requestParameters: GetContractNegotiationStatesRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<Array<ContractNegotiationStateResult>>> {\n if (requestParameters['requestBody'] == null) {\n throw new runtime.RequiredError(\n 'requestBody',\n 'Required parameter \"requestBody\" was null or undefined when calling getContractNegotiationStates().',\n );\n }\n\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n headerParameters['Content-Type'] = 'application/json';\n\n const response = await this.request(\n {\n path: `/wrapper/use-case-api/contract-negotiations/states`,\n method: 'POST',\n headers: headerParameters,\n query: queryParameters,\n body: requestParameters['requestBody'],\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n jsonValue.map(ContractNegotiationStateResultFromJSON),\n );\n }\n\n /**\n * Fetch contract negotiation states as batch\n */\n async getContractNegotiationStates(\n requestParameters: GetContractNegotiationStatesRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<Array<ContractNegotiationStateResult>> {\n const response = await this.getContractNegotiationStatesRaw(\n requestParameters,\n initOverrides,\n );\n return await response.value();\n }\n\n /**\n * Basic KPIs about the running EDC Connector.\n */\n async getKpisRaw(\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<KpiResult>> {\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n const response = await this.request(\n {\n path: `/wrapper/use-case-api/kpis`,\n method: 'GET',\n headers: headerParameters,\n query: queryParameters,\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n KpiResultFromJSON(jsonValue),\n );\n }\n\n /**\n * Basic KPIs about the running EDC Connector.\n */\n async getKpis(\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<KpiResult> {\n const response = await this.getKpisRaw(initOverrides);\n return await response.value();\n }\n\n /**\n * List available functions in policies, prohibitions and obligations.\n */\n async getSupportedFunctionsRaw(\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<Array<string>>> {\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n const response = await this.request(\n {\n path: `/wrapper/use-case-api/supported-policy-functions`,\n method: 'GET',\n headers: headerParameters,\n query: queryParameters,\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse<any>(response);\n }\n\n /**\n * List available functions in policies, prohibitions and obligations.\n */\n async getSupportedFunctions(\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<Array<string>> {\n const response = await this.getSupportedFunctionsRaw(initOverrides);\n return await response.value();\n }\n\n /**\n * Fetch the EDR for a given transfer process. Refreshes EDR if expired. The transfer must have been started as HttpData-PROXY.\n */\n async getTransferProcessEdrRaw(\n requestParameters: GetTransferProcessEdrRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<EdrDto>> {\n if (requestParameters['transferId'] == null) {\n throw new runtime.RequiredError(\n 'transferId',\n 'Required parameter \"transferId\" was null or undefined when calling getTransferProcessEdr().',\n );\n }\n\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n const response = await this.request(\n {\n path: `/wrapper/use-case-api/transfers/{transferId}/edr`.replace(\n `{${'transferId'}}`,\n encodeURIComponent(String(requestParameters['transferId'])),\n ),\n method: 'POST',\n headers: headerParameters,\n query: queryParameters,\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n EdrDtoFromJSON(jsonValue),\n );\n }\n\n /**\n * Fetch the EDR for a given transfer process. Refreshes EDR if expired. The transfer must have been started as HttpData-PROXY.\n */\n async getTransferProcessEdr(\n requestParameters: GetTransferProcessEdrRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<EdrDto> {\n const response = await this.getTransferProcessEdrRaw(\n requestParameters,\n initOverrides,\n );\n return await response.value();\n }\n\n /**\n * Fetch transfer process states as batch\n */\n async getTransferProcessStatesRaw(\n requestParameters: GetTransferProcessStatesRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<Array<TransferProcessStateResult>>> {\n if (requestParameters['requestBody'] == null) {\n throw new runtime.RequiredError(\n 'requestBody',\n 'Required parameter \"requestBody\" was null or undefined when calling getTransferProcessStates().',\n );\n }\n\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n headerParameters['Content-Type'] = 'application/json';\n\n const response = await this.request(\n {\n path: `/wrapper/use-case-api/transfers/states`,\n method: 'POST',\n headers: headerParameters,\n query: queryParameters,\n body: requestParameters['requestBody'],\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n jsonValue.map(TransferProcessStateResultFromJSON),\n );\n }\n\n /**\n * Fetch transfer process states as batch\n */\n async getTransferProcessStates(\n requestParameters: GetTransferProcessStatesRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<Array<TransferProcessStateResult>> {\n const response = await this.getTransferProcessStatesRaw(\n requestParameters,\n initOverrides,\n );\n return await response.value();\n }\n\n /**\n * Negotiate all assets with the given nested asset property filter. Only negotiates assets without active agreements. Returns existing agreements if found.\n */\n async negotiateAllRaw(\n requestParameters: NegotiateAllRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<Array<NegotiateAllResult>>> {\n if (requestParameters['negotiateAllQuery'] == null) {\n throw new runtime.RequiredError(\n 'negotiateAllQuery',\n 'Required parameter \"negotiateAllQuery\" was null or undefined when calling negotiateAll().',\n );\n }\n\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n headerParameters['Content-Type'] = 'application/json';\n\n const response = await this.request(\n {\n path: `/wrapper/use-case-api/negotiations/quick-initiate`,\n method: 'POST',\n headers: headerParameters,\n query: queryParameters,\n body: NegotiateAllQueryToJSON(\n requestParameters['negotiateAllQuery'],\n ),\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n jsonValue.map(NegotiateAllResultFromJSON),\n );\n }\n\n /**\n * Negotiate all assets with the given nested asset property filter. Only negotiates assets without active agreements. Returns existing agreements if found.\n */\n async negotiateAll(\n requestParameters: NegotiateAllRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<Array<NegotiateAllResult>> {\n const response = await this.negotiateAllRaw(\n requestParameters,\n initOverrides,\n );\n return await response.value();\n }\n\n /**\n * Fetch a connector\\'s data offers\n * @deprecated\n */\n async queryCatalogRaw(\n requestParameters: QueryCatalogRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<Array<UiDataOffer>>> {\n if (requestParameters['catalogQuery'] == null) {\n throw new runtime.RequiredError(\n 'catalogQuery',\n 'Required parameter \"catalogQuery\" was null or undefined when calling queryCatalog().',\n );\n }\n\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n headerParameters['Content-Type'] = 'application/json';\n\n const response = await this.request(\n {\n path: `/wrapper/use-case-api/catalog`,\n method: 'POST',\n headers: headerParameters,\n query: queryParameters,\n body: CatalogQueryToJSON(requestParameters['catalogQuery']),\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n jsonValue.map(UiDataOfferFromJSON),\n );\n }\n\n /**\n * Fetch a connector\\'s data offers\n * @deprecated\n */\n async queryCatalog(\n requestParameters: QueryCatalogRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<Array<UiDataOffer>> {\n const response = await this.queryCatalogRaw(\n requestParameters,\n initOverrides,\n );\n return await response.value();\n }\n\n /**\n * Fetch a connector\\'s data offers filtering the catalog by nested asset properties\n */\n async queryCatalogV2Raw(\n requestParameters: QueryCatalogV2Request,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<Array<UiDataOffer>>> {\n if (requestParameters['catalogQueryV2'] == null) {\n throw new runtime.RequiredError(\n 'catalogQueryV2',\n 'Required parameter \"catalogQueryV2\" was null or undefined when calling queryCatalogV2().',\n );\n }\n\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n headerParameters['Content-Type'] = 'application/json';\n\n const response = await this.request(\n {\n path: `/wrapper/use-case-api/catalog-v2`,\n method: 'POST',\n headers: headerParameters,\n query: queryParameters,\n body: CatalogQueryV2ToJSON(requestParameters['catalogQueryV2']),\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n jsonValue.map(UiDataOfferFromJSON),\n );\n }\n\n /**\n * Fetch a connector\\'s data offers filtering the catalog by nested asset properties\n */\n async queryCatalogV2(\n requestParameters: QueryCatalogV2Request,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<Array<UiDataOffer>> {\n const response = await this.queryCatalogV2Raw(\n requestParameters,\n initOverrides,\n );\n return await response.value();\n }\n\n /**\n * Delete the EDR and terminate the given transfer process.\n */\n async terminateTransferProcessRaw(\n requestParameters: TerminateTransferProcessRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<runtime.ApiResponse<IdResponseDto>> {\n if (requestParameters['transferId'] == null) {\n throw new runtime.RequiredError(\n 'transferId',\n 'Required parameter \"transferId\" was null or undefined when calling terminateTransferProcess().',\n );\n }\n\n const queryParameters: any = {};\n\n const headerParameters: runtime.HTTPHeaders = {};\n\n const response = await this.request(\n {\n path: `/wrapper/use-case-api/transfers/{transferId}/terminate`.replace(\n `{${'transferId'}}`,\n encodeURIComponent(String(requestParameters['transferId'])),\n ),\n method: 'POST',\n headers: headerParameters,\n query: queryParameters,\n },\n initOverrides,\n );\n\n return new runtime.JSONApiResponse(response, (jsonValue) =>\n IdResponseDtoFromJSON(jsonValue),\n );\n }\n\n /**\n * Delete the EDR and terminate the given transfer process.\n */\n async terminateTransferProcess(\n requestParameters: TerminateTransferProcessRequest,\n initOverrides?: RequestInit | runtime.InitOverrideFunction,\n ): Promise<IdResponseDto> {\n const response = await this.terminateTransferProcessRaw(\n requestParameters,\n initOverrides,\n );\n return await response.value();\n }\n}\n","var util;\n(function (util) {\n util.assertEqual = (val) => val;\n function assertIs(_arg) { }\n util.assertIs = assertIs;\n function assertNever(_x) {\n throw new Error();\n }\n util.assertNever = assertNever;\n util.arrayToEnum = (items) => {\n const obj = {};\n for (const item of items) {\n obj[item] = item;\n }\n return obj;\n };\n util.getValidEnumValues = (obj) => {\n const validKeys = util.objectKeys(obj).filter((k) => typeof obj[obj[k]] !== \"number\");\n const filtered = {};\n for (const k of validKeys) {\n filtered[k] = obj[k];\n }\n return util.objectValues(filtered);\n };\n util.objectValues = (obj) => {\n return util.objectKeys(obj).map(function (e) {\n return obj[e];\n });\n };\n util.objectKeys = typeof Object.keys === \"function\" // eslint-disable-line ban/ban\n ? (obj) => Object.keys(obj) // eslint-disable-line ban/ban\n : (object) => {\n const keys = [];\n for (const key in object) {\n if (Object.prototype.hasOwnProperty.call(object, key)) {\n keys.push(key);\n }\n }\n return keys;\n };\n util.find = (arr, checker) => {\n for (const item of arr) {\n if (checker(item))\n return item;\n }\n return undefined;\n };\n util.isInteger = typeof Number.isInteger === \"function\"\n ? (val) => Number.isInteger(val) // eslint-disable-line ban/ban\n : (val) => typeof val === \"number\" && isFinite(val) && Math.floor(val) === val;\n function joinValues(array, separator = \" | \") {\n return array\n .map((val) => (typeof val === \"string\" ? `'${val}'` : val))\n .join(separator);\n }\n util.joinValues = joinValues;\n util.jsonStringifyReplacer = (_, value) => {\n if (typeof value === \"bigint\") {\n return value.toString();\n }\n return value;\n };\n})(util || (util = {}));\nvar objectUtil;\n(function (objectUtil) {\n objectUtil.mergeShapes = (first, second) => {\n return {\n ...first,\n ...second, // second overwrites first\n };\n };\n})(objectUtil || (objectUtil = {}));\nconst ZodParsedType = util.arrayToEnum([\n \"string\",\n \"nan\",\n \"number\",\n \"integer\",\n \"float\",\n \"boolean\",\n \"date\",\n \"bigint\",\n \"symbol\",\n \"function\",\n \"undefined\",\n \"null\",\n \"array\",\n \"object\",\n \"unknown\",\n \"promise\",\n \"void\",\n \"never\",\n \"map\",\n \"set\",\n]);\nconst getParsedType = (data) => {\n const t = typeof data;\n switch (t) {\n case \"undefined\":\n return ZodParsedType.undefined;\n case \"string\":\n return ZodParsedType.string;\n case \"number\":\n return isNaN(data) ? ZodParsedType.nan : ZodParsedType.number;\n case \"boolean\":\n return ZodParsedType.boolean;\n case \"function\":\n return ZodParsedType.function;\n case \"bigint\":\n return ZodParsedType.bigint;\n case \"symbol\":\n return ZodParsedType.symbol;\n case \"object\":\n if (Array.isArray(data)) {\n return ZodParsedType.array;\n }\n if (data === null) {\n return ZodParsedType.null;\n }\n if (data.then &&\n typeof data.then === \"function\" &&\n data.catch &&\n typeof data.catch === \"function\") {\n return ZodParsedType.promise;\n }\n if (typeof Map !== \"undefined\" && data instanceof Map) {\n return ZodParsedType.map;\n }\n if (typeof Set !== \"undefined\" && data instanceof Set) {\n return ZodParsedType.set;\n }\n if (typeof Date !== \"undefined\" && data instanceof Date) {\n return ZodParsedType.date;\n }\n return ZodParsedType.object;\n default:\n return ZodParsedType.unknown;\n }\n};\n\nconst ZodIssueCode = util.arrayToEnum([\n \"invalid_type\",\n \"invalid_literal\",\n \"custom\",\n \"invalid_union\",\n \"invalid_union_discriminator\",\n \"invalid_enum_value\",\n \"unrecognized_keys\",\n \"invalid_arguments\",\n \"invalid_return_type\",\n \"invalid_date\",\n \"invalid_string\",\n \"too_small\",\n \"too_big\",\n \"invalid_intersection_types\",\n \"not_multiple_of\",\n \"not_finite\",\n]);\nconst quotelessJson = (obj) => {\n const json = JSON.stringify(obj, null, 2);\n return json.replace(/\"([^\"]+)\":/g, \"$1:\");\n};\nclass ZodError extends Error {\n constructor(issues) {\n super();\n this.issues = [];\n this.addIssue = (sub) => {\n this.issues = [...this.issues, sub];\n };\n this.addIssues = (subs = []) => {\n this.issues = [...this.issues, ...subs];\n };\n const actualProto = new.target.prototype;\n if (Object.setPrototypeOf) {\n // eslint-disable-next-line ban/ban\n Object.setPrototypeOf(this, actualProto);\n }\n else {\n this.__proto__ = actualProto;\n }\n this.name = \"ZodError\";\n this.issues = issues;\n }\n get errors() {\n return this.issues;\n }\n format(_mapper) {\n const mapper = _mapper ||\n function (issue) {\n return issue.message;\n };\n const fieldErrors = { _errors: [] };\n const processError = (error) => {\n for (const issue of error.issues) {\n if (issue.code === \"invalid_union\") {\n issue.unionErrors.map(processError);\n }\n else if (issue.code === \"invalid_return_type\") {\n processError(issue.returnTypeError);\n }\n else if (issue.code === \"invalid_arguments\") {\n processError(issue.argumentsError);\n }\n else if (issue.path.length === 0) {\n fieldErrors._errors.push(mapper(issue));\n }\n else {\n let curr = fieldErrors;\n let i = 0;\n while (i < issue.path.length) {\n const el = issue.path[i];\n const terminal = i === issue.path.length - 1;\n if (!terminal) {\n curr[el] = curr[el] || { _errors: [] };\n // if (typeof el === \"string\") {\n // curr[el] = curr[el] || { _errors: [] };\n // } else if (typeof el === \"number\") {\n // const errorArray: any = [];\n // errorArray._errors = [];\n // curr[el] = curr[el] || errorArray;\n // }\n }\n else {\n curr[el] = curr[el] || { _errors: [] };\n curr[el]._errors.push(mapper(issue));\n }\n curr = curr[el];\n i++;\n }\n }\n }\n };\n processError(this);\n return fieldErrors;\n }\n toString() {\n return this.message;\n }\n get message() {\n return JSON.stringify(this.issues, util.jsonStringifyReplacer, 2);\n }\n get isEmpty() {\n return this.issues.length === 0;\n }\n flatten(mapper = (issue) => issue.message) {\n const fieldErrors = {};\n const formErrors = [];\n for (const sub of this.issues) {\n if (sub.path.length > 0) {\n fieldErrors[sub.path[0]] = fieldErrors[sub.path[0]] || [];\n fieldErrors[sub.path[0]].push(mapper(sub));\n }\n else {\n formErrors.push(mapper(sub));\n }\n }\n return { formErrors, fieldErrors };\n }\n get formErrors() {\n return this.flatten();\n }\n}\nZodError.create = (issues) => {\n const error = new ZodError(issues);\n return error;\n};\n\nconst errorMap = (issue, _ctx) => {\n let message;\n switch (issue.code) {\n case ZodIssueCode.invalid_type:\n if (issue.received === ZodParsedType.undefined) {\n message = \"Required\";\n }\n else {\n message = `Expected ${issue.expected}, received ${issue.received}`;\n }\n break;\n case ZodIssueCode.invalid_literal:\n message = `Invalid literal value, expected ${JSON.stringify(issue.expected, util.jsonStringifyReplacer)}`;\n break;\n case ZodIssueCode.unrecognized_keys:\n message = `Unrecognized key(s) in object: ${util.joinValues(issue.keys, \", \")}`;\n break;\n case ZodIssueCode.invalid_union:\n message = `Invalid input`;\n break;\n case ZodIssueCode.invalid_union_discriminator:\n message = `Invalid discriminator value. Expected ${util.joinValues(issue.options)}`;\n break;\n case ZodIssueCode.invalid_enum_value:\n message = `Invalid enum value. Expected ${util.joinValues(issue.options)}, received '${issue.received}'`;\n break;\n case ZodIssueCode.invalid_arguments:\n message = `Invalid function arguments`;\n break;\n case ZodIssueCode.invalid_return_type:\n message = `Invalid function return type`;\n break;\n case ZodIssueCode.invalid_date:\n message = `Invalid date`;\n break;\n case ZodIssueCode.invalid_string:\n if (typeof issue.validation === \"object\") {\n if (\"includes\" in issue.validation) {\n message = `Invalid input: must include \"${issue.validation.includes}\"`;\n if (typeof issue.validation.position === \"number\") {\n message = `${message} at one or more positions greater than or equal to ${issue.validation.position}`;\n }\n }\n else if (\"startsWith\" in issue.validation) {\n message = `Invalid input: must start with \"${issue.validation.startsWith}\"`;\n }\n else if (\"endsWith\" in issue.validation) {\n message = `Invalid input: must end with \"${issue.validation.endsWith}\"`;\n }\n else {\n util.assertNever(issue.validation);\n }\n }\n else if (issue.validation !== \"regex\") {\n message = `Invalid ${issue.validation}`;\n }\n else {\n message = \"Invalid\";\n }\n break;\n case ZodIssueCode.too_small:\n if (issue.type === \"array\")\n message = `Array must contain ${issue.exact ? \"exactly\" : issue.inclusive ? `at least` : `more than`} ${issue.minimum} element(s)`;\n else if (issue.type === \"string\")\n message = `String must contain ${issue.exact ? \"exactly\" : issue.inclusive ? `at least` : `over`} ${issue.minimum} character(s)`;\n else if (issue.type === \"number\")\n message = `Number must be ${issue.exact\n ? `exactly equal to `\n : issue.inclusive\n ? `greater than or equal to `\n : `greater than `}${issue.minimum}`;\n else if (issue.type === \"date\")\n message = `Date must be ${issue.exact\n ? `exactly equal to `\n : issue.inclusive\n ? `greater than or equal to `\n : `greater than `}${new Date(Number(issue.minimum))}`;\n else\n message = \"Invalid input\";\n break;\n case ZodIssueCode.too_big:\n if (issue.type === \"array\")\n message = `Array must contain ${issue.exact ? `exactly` : issue.inclusive ? `at most` : `less than`} ${issue.maximum} element(s)`;\n else if (issue.type === \"string\")\n message = `String must contain ${issue.exact ? `exactly` : issue.inclusive ? `at most` : `under`} ${issue.maximum} character(s)`;\n else if (issue.type === \"number\")\n message = `Number must be ${issue.exact\n ? `exactly`\n : issue.inclusive\n ? `less than or equal to`\n : `less than`} ${issue.maximum}`;\n else if (issue.type === \"bigint\")\n message = `BigInt must be ${issue.exact\n ? `exactly`\n : issue.inclusive\n ? `less than or equal to`\n : `less than`} ${issue.maximum}`;\n else if (issue.type === \"date\")\n message = `Date must be ${issue.exact\n ? `exactly`\n : issue.inclusive\n ? `smaller than or equal to`\n : `smaller than`} ${new Date(Number(issue.maximum))}`;\n else\n message = \"Invalid input\";\n break;\n case ZodIssueCode.custom:\n message = `Invalid input`;\n break;\n case ZodIssueCode.invalid_intersection_types:\n message = `Intersection results could not be merged`;\n break;\n case ZodIssueCode.not_multiple_of:\n message = `Number must be a multiple of ${issue.multipleOf}`;\n break;\n case ZodIssueCode.not_finite:\n message = \"Number must be finite\";\n break;\n default:\n message = _ctx.defaultError;\n util.assertNever(issue);\n }\n return { message };\n};\n\nlet overrideErrorMap = errorMap;\nfunction setErrorMap(map) {\n overrideErrorMap = map;\n}\nfunction getErrorMap() {\n return overrideErrorMap;\n}\n\nconst makeIssue = (params) => {\n const { data, path, errorMaps, issueData } = params;\n const fullPath = [...path, ...(issueData.path || [])];\n const fullIssue = {\n ...issueData,\n path: fullPath,\n };\n let errorMessage = \"\";\n const maps = errorMaps\n .filter((m) => !!m)\n .slice()\n .reverse();\n for (const map of maps) {\n errorMessage = map(fullIssue, { data, defaultError: errorMessage }).message;\n }\n return {\n ...issueData,\n path: fullPath,\n message: issueData.message || errorMessage,\n };\n};\nconst EMPTY_PATH = [];\nfunction addIssueToContext(ctx, issueData) {\n const issue = makeIssue({\n issueData: issueData,\n data: ctx.data,\n path: ctx.path,\n errorMaps: [\n ctx.common.contextualErrorMap,\n ctx.schemaErrorMap,\n getErrorMap(),\n errorMap, // then global default map\n ].filter((x) => !!x),\n });\n ctx.common.issues.push(issue);\n}\nclass ParseStatus {\n constructor() {\n this.value = \"valid\";\n }\n dirty() {\n if (this.value === \"valid\")\n this.value = \"dirty\";\n }\n abort() {\n if (this.value !== \"aborted\")\n this.value = \"aborted\";\n }\n static mergeArray(status, results) {\n const arrayValue = [];\n for (const s of results) {\n if (s.status === \"aborted\")\n return INVALID;\n if (s.status === \"dirty\")\n status.dirty();\n arrayValue.push(s.value);\n }\n return { status: status.value, value: arrayValue };\n }\n static async mergeObjectAsync(status, pairs) {\n const syncPairs = [];\n for (const pair of pairs) {\n syncPairs.push({\n key: await pair.key,\n value: await pair.value,\n });\n }\n return ParseStatus.mergeObjectSync(status, syncPairs);\n }\n static mergeObjectSync(status, pairs) {\n const finalObject = {};\n for (const pair of pairs) {\n const { key, value } = pair;\n if (key.status === \"aborted\")\n return INVALID;\n if (value.status === \"aborted\")\n return INVALID;\n if (key.status === \"dirty\")\n status.dirty();\n if (value.status === \"dirty\")\n status.dirty();\n if (key.value !== \"__proto__\" &&\n (typeof value.value !== \"undefined\" || pair.alwaysSet)) {\n finalObject[key.value] = value.value;\n }\n }\n return { status: status.value, value: finalObject };\n }\n}\nconst INVALID = Object.freeze({\n status: \"aborted\",\n});\nconst DIRTY = (value) => ({ status: \"dirty\", value });\nconst OK = (value) => ({ status: \"valid\", value });\nconst isAborted = (x) => x.status === \"aborted\";\nconst isDirty = (x) => x.status === \"dirty\";\nconst isValid = (x) => x.status === \"valid\";\nconst isAsync = (x) => typeof Promise !== \"undefined\" && x instanceof Promise;\n\nvar errorUtil;\n(function (errorUtil) {\n errorUtil.errToObj = (message) => typeof message === \"string\" ? { message } : message || {};\n errorUtil.toString = (message) => typeof message === \"string\" ? message : message === null || message === void 0 ? void 0 : message.message;\n})(errorUtil || (errorUtil = {}));\n\nclass ParseInputLazyPath {\n constructor(parent, value, path, key) {\n this._cachedPath = [];\n this.parent = parent;\n this.data = value;\n this._path = path;\n this._key = key;\n }\n get path() {\n if (!this._cachedPath.length) {\n if (this._key instanceof Array) {\n this._cachedPath.push(...this._path, ...this._key);\n }\n else {\n this._cachedPath.push(...this._path, this._key);\n }\n }\n return this._cachedPath;\n }\n}\nconst handleResult = (ctx, result) => {\n if (isValid(result)) {\n return { success: true, data: result.value };\n }\n else {\n if (!ctx.common.issues.length) {\n throw new Error(\"Validation failed but no issues detected.\");\n }\n return {\n success: false,\n get error() {\n if (this._error)\n return this._error;\n const error = new ZodError(ctx.common.issues);\n this._error = error;\n return this._error;\n },\n };\n }\n};\nfunction processCreateParams(params) {\n if (!params)\n return {};\n const { errorMap, invalid_type_error, required_error, description } = params;\n if (errorMap && (invalid_type_error || required_error)) {\n throw new Error(`Can't use \"invalid_type_error\" or \"required_error\" in conjunction with custom error map.`);\n }\n if (errorMap)\n return { errorMap: errorMap, description };\n const customMap = (iss, ctx) => {\n if (iss.code !== \"invalid_type\")\n return { message: ctx.defaultError };\n if (typeof ctx.data === \"undefined\") {\n return { message: required_error !== null && required_error !== void 0 ? required_error : ctx.defaultError };\n }\n return { message: invalid_type_error !== null && invalid_type_error !== void 0 ? invalid_type_error : ctx.defaultError };\n };\n return { errorMap: customMap, description };\n}\nclass ZodType {\n constructor(def) {\n /** Alias of safeParseAsync */\n this.spa = this.safeParseAsync;\n this._def = def;\n this.parse = this.parse.bind(this);\n this.safeParse = this.safeParse.bind(this);\n this.parseAsync = this.parseAsync.bind(this);\n this.safeParseAsync = this.safeParseAsync.bind(this);\n this.spa = this.spa.bind(this);\n this.refine = this.refine.bind(this);\n this.refinement = this.refinement.bind(this);\n this.superRefine = this.superRefine.bind(this);\n this.optional = this.optional.bind(this);\n this.nullable = this.nullable.bind(this);\n this.nullish = this.nullish.bind(this);\n this.array = this.array.bind(this);\n this.promise = this.promise.bind(this);\n this.or = this.or.bind(this);\n this.and = this.and.bind(this);\n this.transform = this.transform.bind(this);\n this.brand = this.brand.bind(this);\n this.default = this.default.bind(this);\n this.catch = this.catch.bind(this);\n this.describe = this.describe.bind(this);\n this.pipe = this.pipe.bind(this);\n this.readonly = this.readonly.bind(this);\n this.isNullable = this.isNullable.bind(this);\n this.isOptional = this.isOptional.bind(this);\n }\n get description() {\n return this._def.description;\n }\n _getType(input) {\n return getParsedType(input.data);\n }\n _getOrReturnCtx(input, ctx) {\n return (ctx || {\n common: input.parent.common,\n data: input.data,\n parsedType: getParsedType(input.data),\n schemaErrorMap: this._def.errorMap,\n path: input.path,\n parent: input.parent,\n });\n }\n _processInputParams(input) {\n return {\n status: new ParseStatus(),\n ctx: {\n common: input.parent.common,\n data: input.data,\n parsedType: getParsedType(input.data),\n schemaErrorMap: this._def.errorMap,\n path: input.path,\n parent: input.parent,\n },\n };\n }\n _parseSync(input) {\n const result = this._parse(input);\n if (isAsync(result)) {\n throw new Error(\"Synchronous parse encountered promise.\");\n }\n return result;\n }\n _parseAsync(input) {\n const result = this._parse(input);\n return Promise.resolve(result);\n }\n parse(data, params) {\n const result = this.safeParse(data, params);\n if (result.success)\n return result.data;\n throw result.error;\n }\n safeParse(data, params) {\n var _a;\n const ctx = {\n common: {\n issues: [],\n async: (_a = params === null || params === void 0 ? void 0 : params.async) !== null && _a !== void 0 ? _a : false,\n contextualErrorMap: params === null || params === void 0 ? void 0 : params.errorMap,\n },\n path: (params === null || params === void 0 ? void 0 : params.path) || [],\n schemaErrorMap: this._def.errorMap,\n parent: null,\n data,\n parsedType: getParsedType(data),\n };\n const result = this._parseSync({ data, path: ctx.path, parent: ctx });\n return handleResult(ctx, result);\n }\n async parseAsync(data, params) {\n const result = await this.safeParseAsync(data, params);\n if (result.success)\n return result.data;\n throw result.error;\n }\n async safeParseAsync(data, params) {\n const ctx = {\n common: {\n issues: [],\n contextualErrorMap: params === null || params === void 0 ? void 0 : params.errorMap,\n async: true,\n },\n path: (params === null || params === void 0 ? void 0 : params.path) || [],\n schemaErrorMap: this._def.errorMap,\n parent: null,\n data,\n parsedType: getParsedType(data),\n };\n const maybeAsyncResult = this._parse({ data, path: ctx.path, parent: ctx });\n const result = await (isAsync(maybeAsyncResult)\n ? maybeAsyncResult\n : Promise.resolve(maybeAsyncResult));\n return handleResult(ctx, result);\n }\n refine(check, message) {\n const getIssueProperties = (val) => {\n if (typeof message === \"string\" || typeof message === \"undefined\") {\n return { message };\n }\n else if (typeof message === \"function\") {\n return message(val);\n }\n else {\n return message;\n }\n };\n return this._refinement((val, ctx) => {\n const result = check(val);\n const setError = () => ctx.addIssue({\n code: ZodIssueCode.custom,\n ...getIssueProperties(val),\n });\n if (typeof Promise !== \"undefined\" && result instanceof Promise) {\n return result.then((data) => {\n if (!data) {\n setError();\n return false;\n }\n else {\n return true;\n }\n });\n }\n if (!result) {\n setError();\n return false;\n }\n else {\n return true;\n }\n });\n }\n refinement(check, refinementData) {\n return this._refinement((val, ctx) => {\n if (!check(val)) {\n ctx.addIssue(typeof refinementData === \"function\"\n ? refinementData(val, ctx)\n : refinementData);\n return false;\n }\n else {\n return true;\n }\n });\n }\n _refinement(refinement) {\n return new ZodEffects({\n schema: this,\n typeName: ZodFirstPartyTypeKind.ZodEffects,\n effect: { type: \"refinement\", refinement },\n });\n }\n superRefine(refinement) {\n return this._refinement(refinement);\n }\n optional() {\n return ZodOptional.create(this, this._def);\n }\n nullable() {\n return ZodNullable.create(this, this._def);\n }\n nullish() {\n return this.nullable().optional();\n }\n array() {\n return ZodArray.create(this, this._def);\n }\n promise() {\n return ZodPromise.create(this, this._def);\n }\n or(option) {\n return ZodUnion.create([this, option], this._def);\n }\n and(incoming) {\n return ZodIntersection.create(this, incoming, this._def);\n }\n transform(transform) {\n return new ZodEffects({\n ...processCreateParams(this._def),\n schema: this,\n typeName: ZodFirstPartyTypeKind.ZodEffects,\n effect: { type: \"transform\", transform },\n });\n }\n default(def) {\n const defaultValueFunc = typeof def === \"function\" ? def : () => def;\n return new ZodDefault({\n ...processCreateParams(this._def),\n innerType: this,\n defaultValue: defaultValueFunc,\n typeName: ZodFirstPartyTypeKind.ZodDefault,\n });\n }\n brand() {\n return new ZodBranded({\n typeName: ZodFirstPartyTypeKind.ZodBranded,\n type: this,\n ...processCreateParams(this._def),\n });\n }\n catch(def) {\n const catchValueFunc = typeof def === \"function\" ? def : () => def;\n return new ZodCatch({\n ...processCreateParams(this._def),\n innerType: this,\n catchValue: catchValueFunc,\n typeName: ZodFirstPartyTypeKind.ZodCatch,\n });\n }\n describe(description) {\n const This = this.constructor;\n return new This({\n ...this._def,\n description,\n });\n }\n pipe(target) {\n return ZodPipeline.create(this, target);\n }\n readonly() {\n return ZodReadonly.create(this);\n }\n isOptional() {\n return this.safeParse(undefined).success;\n }\n isNullable() {\n return this.safeParse(null).success;\n }\n}\nconst cuidRegex = /^c[^\\s-]{8,}$/i;\nconst cuid2Regex = /^[a-z][a-z0-9]*$/;\nconst ulidRegex = /^[0-9A-HJKMNP-TV-Z]{26}$/;\n// const uuidRegex =\n// /^([a-f0-9]{8}-[a-f0-9]{4}-[1-5][a-f0-9]{3}-[a-f0-9]{4}-[a-f0-9]{12}|00000000-0000-0000-0000-000000000000)$/i;\nconst uuidRegex = /^[0-9a-fA-F]{8}\\b-[0-9a-fA-F]{4}\\b-[0-9a-fA-F]{4}\\b-[0-9a-fA-F]{4}\\b-[0-9a-fA-F]{12}$/i;\n// from https://stackoverflow.com/a/46181/1550155\n// old version: too slow, didn't support unicode\n// const emailRegex = /^((([a-z]|\\d|[!#\\$%&'\\*\\+\\-\\/=\\?\\^_`{\\|}~]|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])+(\\.([a-z]|\\d|[!#\\$%&'\\*\\+\\-\\/=\\?\\^_`{\\|}~]|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])+)*)|((\\x22)((((\\x20|\\x09)*(\\x0d\\x0a))?(\\x20|\\x09)+)?(([\\x01-\\x08\\x0b\\x0c\\x0e-\\x1f\\x7f]|\\x21|[\\x23-\\x5b]|[\\x5d-\\x7e]|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])|(\\\\([\\x01-\\x09\\x0b\\x0c\\x0d-\\x7f]|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF]))))*(((\\x20|\\x09)*(\\x0d\\x0a))?(\\x20|\\x09)+)?(\\x22)))@((([a-z]|\\d|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])|(([a-z]|\\d|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])([a-z]|\\d|-|\\.|_|~|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])*([a-z]|\\d|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])))\\.)+(([a-z]|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])|(([a-z]|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])([a-z]|\\d|-|\\.|_|~|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])*([a-z]|[\\u00A0-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFEF])))$/i;\n//old email regex\n// const emailRegex = /^(([^<>()[\\].,;:\\s@\"]+(\\.[^<>()[\\].,;:\\s@\"]+)*)|(\".+\"))@((?!-)([^<>()[\\].,;:\\s@\"]+\\.)+[^<>()[\\].,;:\\s@\"]{1,})[^-<>()[\\].,;:\\s@\"]$/i;\n// eslint-disable-next-line\n// const emailRegex =\n// /^(([^<>()[\\]\\\\.,;:\\s@\\\"]+(\\.[^<>()[\\]\\\\.,;:\\s@\\\"]+)*)|(\\\".+\\\"))@((\\[(((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2}))\\.){3}((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2}))\\])|(\\[IPv6:(([a-f0-9]{1,4}:){7}|::([a-f0-9]{1,4}:){0,6}|([a-f0-9]{1,4}:){1}:([a-f0-9]{1,4}:){0,5}|([a-f0-9]{1,4}:){2}:([a-f0-9]{1,4}:){0,4}|([a-f0-9]{1,4}:){3}:([a-f0-9]{1,4}:){0,3}|([a-f0-9]{1,4}:){4}:([a-f0-9]{1,4}:){0,2}|([a-f0-9]{1,4}:){5}:([a-f0-9]{1,4}:){0,1})([a-f0-9]{1,4}|(((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2}))\\.){3}((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2})))\\])|([A-Za-z0-9]([A-Za-z0-9-]*[A-Za-z0-9])*(\\.[A-Za-z]{2,})+))$/;\n// const emailRegex =\n// /^[a-zA-Z0-9\\.\\!\\#\\$\\%\\&\\'\\*\\+\\/\\=\\?\\^\\_\\`\\{\\|\\}\\~\\-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/;\n// const emailRegex =\n// /^(?:[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*|\"(?:[\\x01-\\x08\\x0b\\x0c\\x0e-\\x1f\\x21\\x23-\\x5b\\x5d-\\x7f]|\\\\[\\x01-\\x09\\x0b\\x0c\\x0e-\\x7f])*\")@(?:(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?|\\[(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?|[a-z0-9-]*[a-z0-9]:(?:[\\x01-\\x08\\x0b\\x0c\\x0e-\\x1f\\x21-\\x5a\\x53-\\x7f]|\\\\[\\x01-\\x09\\x0b\\x0c\\x0e-\\x7f])+)\\])$/i;\nconst emailRegex = /^(?!\\.)(?!.*\\.\\.)([A-Z0-9_+-\\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\\-]*\\.)+[A-Z]{2,}$/i;\n// const emailRegex =\n// /^[a-z0-9.!#$%&’*+/=?^_`{|}~-]+@[a-z0-9-]+(?:\\.[a-z0-9\\-]+)*$/i;\n// from https://thekevinscott.com/emojis-in-javascript/#writing-a-regular-expression\nconst _emojiRegex = `^(\\\\p{Extended_Pictographic}|\\\\p{Emoji_Component})+$`;\nlet emojiRegex;\nconst ipv4Regex = /^(((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2}))\\.){3}((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2}))$/;\nconst ipv6Regex = /^(([a-f0-9]{1,4}:){7}|::([a-f0-9]{1,4}:){0,6}|([a-f0-9]{1,4}:){1}:([a-f0-9]{1,4}:){0,5}|([a-f0-9]{1,4}:){2}:([a-f0-9]{1,4}:){0,4}|([a-f0-9]{1,4}:){3}:([a-f0-9]{1,4}:){0,3}|([a-f0-9]{1,4}:){4}:([a-f0-9]{1,4}:){0,2}|([a-f0-9]{1,4}:){5}:([a-f0-9]{1,4}:){0,1})([a-f0-9]{1,4}|(((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2}))\\.){3}((25[0-5])|(2[0-4][0-9])|(1[0-9]{2})|([0-9]{1,2})))$/;\n// Adapted from https://stackoverflow.com/a/3143231\nconst datetimeRegex = (args) => {\n if (args.precision) {\n if (args.offset) {\n return new RegExp(`^\\\\d{4}-\\\\d{2}-\\\\d{2}T\\\\d{2}:\\\\d{2}:\\\\d{2}\\\\.\\\\d{${args.precision}}(([+-]\\\\d{2}(:?\\\\d{2})?)|Z)$`);\n }\n else {\n return new RegExp(`^\\\\d{4}-\\\\d{2}-\\\\d{2}T\\\\d{2}:\\\\d{2}:\\\\d{2}\\\\.\\\\d{${args.precision}}Z$`);\n }\n }\n else if (args.precision === 0) {\n if (args.offset) {\n return new RegExp(`^\\\\d{4}-\\\\d{2}-\\\\d{2}T\\\\d{2}:\\\\d{2}:\\\\d{2}(([+-]\\\\d{2}(:?\\\\d{2})?)|Z)$`);\n }\n else {\n return new RegExp(`^\\\\d{4}-\\\\d{2}-\\\\d{2}T\\\\d{2}:\\\\d{2}:\\\\d{2}Z$`);\n }\n }\n else {\n if (args.offset) {\n return new RegExp(`^\\\\d{4}-\\\\d{2}-\\\\d{2}T\\\\d{2}:\\\\d{2}:\\\\d{2}(\\\\.\\\\d+)?(([+-]\\\\d{2}(:?\\\\d{2})?)|Z)$`);\n }\n else {\n return new RegExp(`^\\\\d{4}-\\\\d{2}-\\\\d{2}T\\\\d{2}:\\\\d{2}:\\\\d{2}(\\\\.\\\\d+)?Z$`);\n }\n }\n};\nfunction isValidIP(ip, version) {\n if ((version === \"v4\" || !version) && ipv4Regex.test(ip)) {\n return true;\n }\n if ((version === \"v6\" || !version) && ipv6Regex.test(ip)) {\n return true;\n }\n return false;\n}\nclass ZodString extends ZodType {\n _parse(input) {\n if (this._def.coerce) {\n input.data = String(input.data);\n }\n const parsedType = this._getType(input);\n if (parsedType !== ZodParsedType.string) {\n const ctx = this._getOrReturnCtx(input);\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_type,\n expected: ZodParsedType.string,\n received: ctx.parsedType,\n }\n //\n );\n return INVALID;\n }\n const status = new ParseStatus();\n let ctx = undefined;\n for (const check of this._def.checks) {\n if (check.kind === \"min\") {\n if (input.data.length < check.value) {\n ctx = this._getOrReturnCtx(input, ctx);\n addIssueToContext(ctx, {\n code: ZodIssueCode.too_small,\n minimum: check.value,\n type: \"string\",\n inclusive: true,\n exact: false,\n message: check.message,\n });\n status.dirty();\n }\n }\n else if (check.kind === \"max\") {\n if (input.data.length > check.value) {\n ctx = this._getOrReturnCtx(input, ctx);\n addIssueToContext(ctx, {\n code: ZodIssueCode.too_big,\n maximum: check.value,\n type: \"string\",\n inclusive: true,\n exact: false,\n message: check.message,\n });\n status.dirty();\n }\n }\n else if (check.kind === \"length\") {\n const tooBig = input.data.length > check.value;\n const tooSmall = input.data.length < check.value;\n if (tooBig || tooSmall) {\n ctx = this._getOrReturnCtx(input, ctx);\n if (tooBig) {\n addIssueToContext(ctx, {\n code: ZodIssueCode.too_big,\n maximum: check.value,\n type: \"string\",\n inclusive: true,\n exact: true,\n message: check.message,\n });\n }\n else if (tooSmall) {\n addIssueToContext(ctx, {\n code: ZodIssueCode.too_small,\n minimum: check.value,\n type: \"string\",\n inclusive: true,\n exact: true,\n message: check.message,\n });\n }\n status.dirty();\n }\n }\n else if (check.kind === \"email\") {\n if (!emailRegex.test(input.data)) {\n ctx = this._getOrReturnCtx(input, ctx);\n addIssueToContext(ctx, {\n validation: \"email\",\n code: ZodIssueCode.invalid_string,\n message: check.message,\n });\n status.dirty();\n }\n }\n else if (check.kind === \"emoji\") {\n if (!emojiRegex) {\n emojiRegex = new RegExp(_emojiRegex, \"u\");\n }\n if (!emojiRegex.test(input.data)) {\n ctx = this._getOrReturnCtx(input, ctx);\n addIssueToContext(ctx, {\n validation: \"emoji\",\n code: ZodIssueCode.invalid_string,\n message: check.message,\n });\n status.dirty();\n }\n }\n else if (check.kind === \"uuid\") {\n if (!uuidRegex.test(input.data)) {\n ctx = this._getOrReturnCtx(input, ctx);\n addIssueToContext(ctx, {\n validation: \"uuid\",\n code: ZodIssueCode.invalid_string,\n message: check.message,\n });\n status.dirty();\n }\n }\n else if (check.kind === \"cuid\") {\n if (!cuidRegex.test(input.data)) {\n ctx = this._getOrReturnCtx(input, ctx);\n addIssueToContext(ctx, {\n validation: \"cuid\",\n code: ZodIssueCode.invalid_string,\n message: check.message,\n });\n status.dirty();\n }\n }\n else if (check.kind === \"cuid2\") {\n if (!cuid2Regex.test(input.data)) {\n ctx = this._getOrReturnCtx(input, ctx);\n addIssueToContext(ctx, {\n validation: \"cuid2\",\n code: ZodIssueCode.invalid_string,\n message: check.message,\n });\n status.dirty();\n }\n }\n else if (check.kind === \"ulid\") {\n if (!ulidRegex.test(input.data)) {\n ctx = this._getOrReturnCtx(input, ctx);\n addIssueToContext(ctx, {\n validation: \"ulid\",\n code: ZodIssueCode.invalid_string,\n message: check.message,\n });\n status.dirty();\n }\n }\n else if (check.kind === \"url\") {\n try {\n new URL(input.data);\n }\n catch (_a) {\n ctx = this._getOrReturnCtx(input, ctx);\n addIssueToContext(ctx, {\n validation: \"url\",\n code: ZodIssueCode.invalid_string,\n message: check.message,\n });\n status.dirty();\n }\n }\n else if (check.kind === \"regex\") {\n check.regex.lastIndex = 0;\n const testResult = check.regex.test(input.data);\n if (!testResult) {\n ctx = this._getOrReturnCtx(input, ctx);\n addIssueToContext(ctx, {\n validation: \"regex\",\n code: ZodIssueCode.invalid_string,\n message: check.message,\n });\n status.dirty();\n }\n }\n else if (check.kind === \"trim\") {\n input.data = input.data.trim();\n }\n else if (check.kind === \"includes\") {\n if (!input.data.includes(check.value, check.position)) {\n ctx = this._getOrReturnCtx(input, ctx);\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_string,\n validation: { includes: check.value, position: check.position },\n message: check.message,\n });\n status.dirty();\n }\n }\n else if (check.kind === \"toLowerCase\") {\n input.data = input.data.toLowerCase();\n }\n else if (check.kind === \"toUpperCase\") {\n input.data = input.data.toUpperCase();\n }\n else if (check.kind === \"startsWith\") {\n if (!input.data.startsWith(check.value)) {\n ctx = this._getOrReturnCtx(input, ctx);\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_string,\n validation: { startsWith: check.value },\n message: check.message,\n });\n status.dirty();\n }\n }\n else if (check.kind === \"endsWith\") {\n if (!input.data.endsWith(check.value)) {\n ctx = this._getOrReturnCtx(input, ctx);\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_string,\n validation: { endsWith: check.value },\n message: check.message,\n });\n status.dirty();\n }\n }\n else if (check.kind === \"datetime\") {\n const regex = datetimeRegex(check);\n if (!regex.test(input.data)) {\n ctx = this._getOrReturnCtx(input, ctx);\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_string,\n validation: \"datetime\",\n message: check.message,\n });\n status.dirty();\n }\n }\n else if (check.kind === \"ip\") {\n if (!isValidIP(input.data, check.version)) {\n ctx = this._getOrReturnCtx(input, ctx);\n addIssueToContext(ctx, {\n validation: \"ip\",\n code: ZodIssueCode.invalid_string,\n message: check.message,\n });\n status.dirty();\n }\n }\n else {\n util.assertNever(check);\n }\n }\n return { status: status.value, value: input.data };\n }\n _regex(regex, validation, message) {\n return this.refinement((data) => regex.test(data), {\n validation,\n code: ZodIssueCode.invalid_string,\n ...errorUtil.errToObj(message),\n });\n }\n _addCheck(check) {\n return new ZodString({\n ...this._def,\n checks: [...this._def.checks, check],\n });\n }\n email(message) {\n return this._addCheck({ kind: \"email\", ...errorUtil.errToObj(message) });\n }\n url(message) {\n return this._addCheck({ kind: \"url\", ...errorUtil.errToObj(message) });\n }\n emoji(message) {\n return this._addCheck({ kind: \"emoji\", ...errorUtil.errToObj(message) });\n }\n uuid(message) {\n return this._addCheck({ kind: \"uuid\", ...errorUtil.errToObj(message) });\n }\n cuid(message) {\n return this._addCheck({ kind: \"cuid\", ...errorUtil.errToObj(message) });\n }\n cuid2(message) {\n return this._addCheck({ kind: \"cuid2\", ...errorUtil.errToObj(message) });\n }\n ulid(message) {\n return this._addCheck({ kind: \"ulid\", ...errorUtil.errToObj(message) });\n }\n ip(options) {\n return this._addCheck({ kind: \"ip\", ...errorUtil.errToObj(options) });\n }\n datetime(options) {\n var _a;\n if (typeof options === \"string\") {\n return this._addCheck({\n kind: \"datetime\",\n precision: null,\n offset: false,\n message: options,\n });\n }\n return this._addCheck({\n kind: \"datetime\",\n precision: typeof (options === null || options === void 0 ? void 0 : options.precision) === \"undefined\" ? null : options === null || options === void 0 ? void 0 : options.precision,\n offset: (_a = options === null || options === void 0 ? void 0 : options.offset) !== null && _a !== void 0 ? _a : false,\n ...errorUtil.errToObj(options === null || options === void 0 ? void 0 : options.message),\n });\n }\n regex(regex, message) {\n return this._addCheck({\n kind: \"regex\",\n regex: regex,\n ...errorUtil.errToObj(message),\n });\n }\n includes(value, options) {\n return this._addCheck({\n kind: \"includes\",\n value: value,\n position: options === null || options === void 0 ? void 0 : options.position,\n ...errorUtil.errToObj(options === null || options === void 0 ? void 0 : options.message),\n });\n }\n startsWith(value, message) {\n return this._addCheck({\n kind: \"startsWith\",\n value: value,\n ...errorUtil.errToObj(message),\n });\n }\n endsWith(value, message) {\n return this._addCheck({\n kind: \"endsWith\",\n value: value,\n ...errorUtil.errToObj(message),\n });\n }\n min(minLength, message) {\n return this._addCheck({\n kind: \"min\",\n value: minLength,\n ...errorUtil.errToObj(message),\n });\n }\n max(maxLength, message) {\n return this._addCheck({\n kind: \"max\",\n value: maxLength,\n ...errorUtil.errToObj(message),\n });\n }\n length(len, message) {\n return this._addCheck({\n kind: \"length\",\n value: len,\n ...errorUtil.errToObj(message),\n });\n }\n /**\n * @deprecated Use z.string().min(1) instead.\n * @see {@link ZodString.min}\n */\n nonempty(message) {\n return this.min(1, errorUtil.errToObj(message));\n }\n trim() {\n return new ZodString({\n ...this._def,\n checks: [...this._def.checks, { kind: \"trim\" }],\n });\n }\n toLowerCase() {\n return new ZodString({\n ...this._def,\n checks: [...this._def.checks, { kind: \"toLowerCase\" }],\n });\n }\n toUpperCase() {\n return new ZodString({\n ...this._def,\n checks: [...this._def.checks, { kind: \"toUpperCase\" }],\n });\n }\n get isDatetime() {\n return !!this._def.checks.find((ch) => ch.kind === \"datetime\");\n }\n get isEmail() {\n return !!this._def.checks.find((ch) => ch.kind === \"email\");\n }\n get isURL() {\n return !!this._def.checks.find((ch) => ch.kind === \"url\");\n }\n get isEmoji() {\n return !!this._def.checks.find((ch) => ch.kind === \"emoji\");\n }\n get isUUID() {\n return !!this._def.checks.find((ch) => ch.kind === \"uuid\");\n }\n get isCUID() {\n return !!this._def.checks.find((ch) => ch.kind === \"cuid\");\n }\n get isCUID2() {\n return !!this._def.checks.find((ch) => ch.kind === \"cuid2\");\n }\n get isULID() {\n return !!this._def.checks.find((ch) => ch.kind === \"ulid\");\n }\n get isIP() {\n return !!this._def.checks.find((ch) => ch.kind === \"ip\");\n }\n get minLength() {\n let min = null;\n for (const ch of this._def.checks) {\n if (ch.kind === \"min\") {\n if (min === null || ch.value > min)\n min = ch.value;\n }\n }\n return min;\n }\n get maxLength() {\n let max = null;\n for (const ch of this._def.checks) {\n if (ch.kind === \"max\") {\n if (max === null || ch.value < max)\n max = ch.value;\n }\n }\n return max;\n }\n}\nZodString.create = (params) => {\n var _a;\n return new ZodString({\n checks: [],\n typeName: ZodFirstPartyTypeKind.ZodString,\n coerce: (_a = params === null || params === void 0 ? void 0 : params.coerce) !== null && _a !== void 0 ? _a : false,\n ...processCreateParams(params),\n });\n};\n// https://stackoverflow.com/questions/3966484/why-does-modulus-operator-return-fractional-number-in-javascript/31711034#31711034\nfunction floatSafeRemainder(val, step) {\n const valDecCount = (val.toString().split(\".\")[1] || \"\").length;\n const stepDecCount = (step.toString().split(\".\")[1] || \"\").length;\n const decCount = valDecCount > stepDecCount ? valDecCount : stepDecCount;\n const valInt = parseInt(val.toFixed(decCount).replace(\".\", \"\"));\n const stepInt = parseInt(step.toFixed(decCount).replace(\".\", \"\"));\n return (valInt % stepInt) / Math.pow(10, decCount);\n}\nclass ZodNumber extends ZodType {\n constructor() {\n super(...arguments);\n this.min = this.gte;\n this.max = this.lte;\n this.step = this.multipleOf;\n }\n _parse(input) {\n if (this._def.coerce) {\n input.data = Number(input.data);\n }\n const parsedType = this._getType(input);\n if (parsedType !== ZodParsedType.number) {\n const ctx = this._getOrReturnCtx(input);\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_type,\n expected: ZodParsedType.number,\n received: ctx.parsedType,\n });\n return INVALID;\n }\n let ctx = undefined;\n const status = new ParseStatus();\n for (const check of this._def.checks) {\n if (check.kind === \"int\") {\n if (!util.isInteger(input.data)) {\n ctx = this._getOrReturnCtx(input, ctx);\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_type,\n expected: \"integer\",\n received: \"float\",\n message: check.message,\n });\n status.dirty();\n }\n }\n else if (check.kind === \"min\") {\n const tooSmall = check.inclusive\n ? input.data < check.value\n : input.data <= check.value;\n if (tooSmall) {\n ctx = this._getOrReturnCtx(input, ctx);\n addIssueToContext(ctx, {\n code: ZodIssueCode.too_small,\n minimum: check.value,\n type: \"number\",\n inclusive: check.inclusive,\n exact: false,\n message: check.message,\n });\n status.dirty();\n }\n }\n else if (check.kind === \"max\") {\n const tooBig = check.inclusive\n ? input.data > check.value\n : input.data >= check.value;\n if (tooBig) {\n ctx = this._getOrReturnCtx(input, ctx);\n addIssueToContext(ctx, {\n code: ZodIssueCode.too_big,\n maximum: check.value,\n type: \"number\",\n inclusive: check.inclusive,\n exact: false,\n message: check.message,\n });\n status.dirty();\n }\n }\n else if (check.kind === \"multipleOf\") {\n if (floatSafeRemainder(input.data, check.value) !== 0) {\n ctx = this._getOrReturnCtx(input, ctx);\n addIssueToContext(ctx, {\n code: ZodIssueCode.not_multiple_of,\n multipleOf: check.value,\n message: check.message,\n });\n status.dirty();\n }\n }\n else if (check.kind === \"finite\") {\n if (!Number.isFinite(input.data)) {\n ctx = this._getOrReturnCtx(input, ctx);\n addIssueToContext(ctx, {\n code: ZodIssueCode.not_finite,\n message: check.message,\n });\n status.dirty();\n }\n }\n else {\n util.assertNever(check);\n }\n }\n return { status: status.value, value: input.data };\n }\n gte(value, message) {\n return this.setLimit(\"min\", value, true, errorUtil.toString(message));\n }\n gt(value, message) {\n return this.setLimit(\"min\", value, false, errorUtil.toString(message));\n }\n lte(value, message) {\n return this.setLimit(\"max\", value, true, errorUtil.toString(message));\n }\n lt(value, message) {\n return this.setLimit(\"max\", value, false, errorUtil.toString(message));\n }\n setLimit(kind, value, inclusive, message) {\n return new ZodNumber({\n ...this._def,\n checks: [\n ...this._def.checks,\n {\n kind,\n value,\n inclusive,\n message: errorUtil.toString(message),\n },\n ],\n });\n }\n _addCheck(check) {\n return new ZodNumber({\n ...this._def,\n checks: [...this._def.checks, check],\n });\n }\n int(message) {\n return this._addCheck({\n kind: \"int\",\n message: errorUtil.toString(message),\n });\n }\n positive(message) {\n return this._addCheck({\n kind: \"min\",\n value: 0,\n inclusive: false,\n message: errorUtil.toString(message),\n });\n }\n negative(message) {\n return this._addCheck({\n kind: \"max\",\n value: 0,\n inclusive: false,\n message: errorUtil.toString(message),\n });\n }\n nonpositive(message) {\n return this._addCheck({\n kind: \"max\",\n value: 0,\n inclusive: true,\n message: errorUtil.toString(message),\n });\n }\n nonnegative(message) {\n return this._addCheck({\n kind: \"min\",\n value: 0,\n inclusive: true,\n message: errorUtil.toString(message),\n });\n }\n multipleOf(value, message) {\n return this._addCheck({\n kind: \"multipleOf\",\n value: value,\n message: errorUtil.toString(message),\n });\n }\n finite(message) {\n return this._addCheck({\n kind: \"finite\",\n message: errorUtil.toString(message),\n });\n }\n safe(message) {\n return this._addCheck({\n kind: \"min\",\n inclusive: true,\n value: Number.MIN_SAFE_INTEGER,\n message: errorUtil.toString(message),\n })._addCheck({\n kind: \"max\",\n inclusive: true,\n value: Number.MAX_SAFE_INTEGER,\n message: errorUtil.toString(message),\n });\n }\n get minValue() {\n let min = null;\n for (const ch of this._def.checks) {\n if (ch.kind === \"min\") {\n if (min === null || ch.value > min)\n min = ch.value;\n }\n }\n return min;\n }\n get maxValue() {\n let max = null;\n for (const ch of this._def.checks) {\n if (ch.kind === \"max\") {\n if (max === null || ch.value < max)\n max = ch.value;\n }\n }\n return max;\n }\n get isInt() {\n return !!this._def.checks.find((ch) => ch.kind === \"int\" ||\n (ch.kind === \"multipleOf\" && util.isInteger(ch.value)));\n }\n get isFinite() {\n let max = null, min = null;\n for (const ch of this._def.checks) {\n if (ch.kind === \"finite\" ||\n ch.kind === \"int\" ||\n ch.kind === \"multipleOf\") {\n return true;\n }\n else if (ch.kind === \"min\") {\n if (min === null || ch.value > min)\n min = ch.value;\n }\n else if (ch.kind === \"max\") {\n if (max === null || ch.value < max)\n max = ch.value;\n }\n }\n return Number.isFinite(min) && Number.isFinite(max);\n }\n}\nZodNumber.create = (params) => {\n return new ZodNumber({\n checks: [],\n typeName: ZodFirstPartyTypeKind.ZodNumber,\n coerce: (params === null || params === void 0 ? void 0 : params.coerce) || false,\n ...processCreateParams(params),\n });\n};\nclass ZodBigInt extends ZodType {\n constructor() {\n super(...arguments);\n this.min = this.gte;\n this.max = this.lte;\n }\n _parse(input) {\n if (this._def.coerce) {\n input.data = BigInt(input.data);\n }\n const parsedType = this._getType(input);\n if (parsedType !== ZodParsedType.bigint) {\n const ctx = this._getOrReturnCtx(input);\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_type,\n expected: ZodParsedType.bigint,\n received: ctx.parsedType,\n });\n return INVALID;\n }\n let ctx = undefined;\n const status = new ParseStatus();\n for (const check of this._def.checks) {\n if (check.kind === \"min\") {\n const tooSmall = check.inclusive\n ? input.data < check.value\n : input.data <= check.value;\n if (tooSmall) {\n ctx = this._getOrReturnCtx(input, ctx);\n addIssueToContext(ctx, {\n code: ZodIssueCode.too_small,\n type: \"bigint\",\n minimum: check.value,\n inclusive: check.inclusive,\n message: check.message,\n });\n status.dirty();\n }\n }\n else if (check.kind === \"max\") {\n const tooBig = check.inclusive\n ? input.data > check.value\n : input.data >= check.value;\n if (tooBig) {\n ctx = this._getOrReturnCtx(input, ctx);\n addIssueToContext(ctx, {\n code: ZodIssueCode.too_big,\n type: \"bigint\",\n maximum: check.value,\n inclusive: check.inclusive,\n message: check.message,\n });\n status.dirty();\n }\n }\n else if (check.kind === \"multipleOf\") {\n if (input.data % check.value !== BigInt(0)) {\n ctx = this._getOrReturnCtx(input, ctx);\n addIssueToContext(ctx, {\n code: ZodIssueCode.not_multiple_of,\n multipleOf: check.value,\n message: check.message,\n });\n status.dirty();\n }\n }\n else {\n util.assertNever(check);\n }\n }\n return { status: status.value, value: input.data };\n }\n gte(value, message) {\n return this.setLimit(\"min\", value, true, errorUtil.toString(message));\n }\n gt(value, message) {\n return this.setLimit(\"min\", value, false, errorUtil.toString(message));\n }\n lte(value, message) {\n return this.setLimit(\"max\", value, true, errorUtil.toString(message));\n }\n lt(value, message) {\n return this.setLimit(\"max\", value, false, errorUtil.toString(message));\n }\n setLimit(kind, value, inclusive, message) {\n return new ZodBigInt({\n ...this._def,\n checks: [\n ...this._def.checks,\n {\n kind,\n value,\n inclusive,\n message: errorUtil.toString(message),\n },\n ],\n });\n }\n _addCheck(check) {\n return new ZodBigInt({\n ...this._def,\n checks: [...this._def.checks, check],\n });\n }\n positive(message) {\n return this._addCheck({\n kind: \"min\",\n value: BigInt(0),\n inclusive: false,\n message: errorUtil.toString(message),\n });\n }\n negative(message) {\n return this._addCheck({\n kind: \"max\",\n value: BigInt(0),\n inclusive: false,\n message: errorUtil.toString(message),\n });\n }\n nonpositive(message) {\n return this._addCheck({\n kind: \"max\",\n value: BigInt(0),\n inclusive: true,\n message: errorUtil.toString(message),\n });\n }\n nonnegative(message) {\n return this._addCheck({\n kind: \"min\",\n value: BigInt(0),\n inclusive: true,\n message: errorUtil.toString(message),\n });\n }\n multipleOf(value, message) {\n return this._addCheck({\n kind: \"multipleOf\",\n value,\n message: errorUtil.toString(message),\n });\n }\n get minValue() {\n let min = null;\n for (const ch of this._def.checks) {\n if (ch.kind === \"min\") {\n if (min === null || ch.value > min)\n min = ch.value;\n }\n }\n return min;\n }\n get maxValue() {\n let max = null;\n for (const ch of this._def.checks) {\n if (ch.kind === \"max\") {\n if (max === null || ch.value < max)\n max = ch.value;\n }\n }\n return max;\n }\n}\nZodBigInt.create = (params) => {\n var _a;\n return new ZodBigInt({\n checks: [],\n typeName: ZodFirstPartyTypeKind.ZodBigInt,\n coerce: (_a = params === null || params === void 0 ? void 0 : params.coerce) !== null && _a !== void 0 ? _a : false,\n ...processCreateParams(params),\n });\n};\nclass ZodBoolean extends ZodType {\n _parse(input) {\n if (this._def.coerce) {\n input.data = Boolean(input.data);\n }\n const parsedType = this._getType(input);\n if (parsedType !== ZodParsedType.boolean) {\n const ctx = this._getOrReturnCtx(input);\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_type,\n expected: ZodParsedType.boolean,\n received: ctx.parsedType,\n });\n return INVALID;\n }\n return OK(input.data);\n }\n}\nZodBoolean.create = (params) => {\n return new ZodBoolean({\n typeName: ZodFirstPartyTypeKind.ZodBoolean,\n coerce: (params === null || params === void 0 ? void 0 : params.coerce) || false,\n ...processCreateParams(params),\n });\n};\nclass ZodDate extends ZodType {\n _parse(input) {\n if (this._def.coerce) {\n input.data = new Date(input.data);\n }\n const parsedType = this._getType(input);\n if (parsedType !== ZodParsedType.date) {\n const ctx = this._getOrReturnCtx(input);\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_type,\n expected: ZodParsedType.date,\n received: ctx.parsedType,\n });\n return INVALID;\n }\n if (isNaN(input.data.getTime())) {\n const ctx = this._getOrReturnCtx(input);\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_date,\n });\n return INVALID;\n }\n const status = new ParseStatus();\n let ctx = undefined;\n for (const check of this._def.checks) {\n if (check.kind === \"min\") {\n if (input.data.getTime() < check.value) {\n ctx = this._getOrReturnCtx(input, ctx);\n addIssueToContext(ctx, {\n code: ZodIssueCode.too_small,\n message: check.message,\n inclusive: true,\n exact: false,\n minimum: check.value,\n type: \"date\",\n });\n status.dirty();\n }\n }\n else if (check.kind === \"max\") {\n if (input.data.getTime() > check.value) {\n ctx = this._getOrReturnCtx(input, ctx);\n addIssueToContext(ctx, {\n code: ZodIssueCode.too_big,\n message: check.message,\n inclusive: true,\n exact: false,\n maximum: check.value,\n type: \"date\",\n });\n status.dirty();\n }\n }\n else {\n util.assertNever(check);\n }\n }\n return {\n status: status.value,\n value: new Date(input.data.getTime()),\n };\n }\n _addCheck(check) {\n return new ZodDate({\n ...this._def,\n checks: [...this._def.checks, check],\n });\n }\n min(minDate, message) {\n return this._addCheck({\n kind: \"min\",\n value: minDate.getTime(),\n message: errorUtil.toString(message),\n });\n }\n max(maxDate, message) {\n return this._addCheck({\n kind: \"max\",\n value: maxDate.getTime(),\n message: errorUtil.toString(message),\n });\n }\n get minDate() {\n let min = null;\n for (const ch of this._def.checks) {\n if (ch.kind === \"min\") {\n if (min === null || ch.value > min)\n min = ch.value;\n }\n }\n return min != null ? new Date(min) : null;\n }\n get maxDate() {\n let max = null;\n for (const ch of this._def.checks) {\n if (ch.kind === \"max\") {\n if (max === null || ch.value < max)\n max = ch.value;\n }\n }\n return max != null ? new Date(max) : null;\n }\n}\nZodDate.create = (params) => {\n return new ZodDate({\n checks: [],\n coerce: (params === null || params === void 0 ? void 0 : params.coerce) || false,\n typeName: ZodFirstPartyTypeKind.ZodDate,\n ...processCreateParams(params),\n });\n};\nclass ZodSymbol extends ZodType {\n _parse(input) {\n const parsedType = this._getType(input);\n if (parsedType !== ZodParsedType.symbol) {\n const ctx = this._getOrReturnCtx(input);\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_type,\n expected: ZodParsedType.symbol,\n received: ctx.parsedType,\n });\n return INVALID;\n }\n return OK(input.data);\n }\n}\nZodSymbol.create = (params) => {\n return new ZodSymbol({\n typeName: ZodFirstPartyTypeKind.ZodSymbol,\n ...processCreateParams(params),\n });\n};\nclass ZodUndefined extends ZodType {\n _parse(input) {\n const parsedType = this._getType(input);\n if (parsedType !== ZodParsedType.undefined) {\n const ctx = this._getOrReturnCtx(input);\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_type,\n expected: ZodParsedType.undefined,\n received: ctx.parsedType,\n });\n return INVALID;\n }\n return OK(input.data);\n }\n}\nZodUndefined.create = (params) => {\n return new ZodUndefined({\n typeName: ZodFirstPartyTypeKind.ZodUndefined,\n ...processCreateParams(params),\n });\n};\nclass ZodNull extends ZodType {\n _parse(input) {\n const parsedType = this._getType(input);\n if (parsedType !== ZodParsedType.null) {\n const ctx = this._getOrReturnCtx(input);\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_type,\n expected: ZodParsedType.null,\n received: ctx.parsedType,\n });\n return INVALID;\n }\n return OK(input.data);\n }\n}\nZodNull.create = (params) => {\n return new ZodNull({\n typeName: ZodFirstPartyTypeKind.ZodNull,\n ...processCreateParams(params),\n });\n};\nclass ZodAny extends ZodType {\n constructor() {\n super(...arguments);\n // to prevent instances of other classes from extending ZodAny. this causes issues with catchall in ZodObject.\n this._any = true;\n }\n _parse(input) {\n return OK(input.data);\n }\n}\nZodAny.create = (params) => {\n return new ZodAny({\n typeName: ZodFirstPartyTypeKind.ZodAny,\n ...processCreateParams(params),\n });\n};\nclass ZodUnknown extends ZodType {\n constructor() {\n super(...arguments);\n // required\n this._unknown = true;\n }\n _parse(input) {\n return OK(input.data);\n }\n}\nZodUnknown.create = (params) => {\n return new ZodUnknown({\n typeName: ZodFirstPartyTypeKind.ZodUnknown,\n ...processCreateParams(params),\n });\n};\nclass ZodNever extends ZodType {\n _parse(input) {\n const ctx = this._getOrReturnCtx(input);\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_type,\n expected: ZodParsedType.never,\n received: ctx.parsedType,\n });\n return INVALID;\n }\n}\nZodNever.create = (params) => {\n return new ZodNever({\n typeName: ZodFirstPartyTypeKind.ZodNever,\n ...processCreateParams(params),\n });\n};\nclass ZodVoid extends ZodType {\n _parse(input) {\n const parsedType = this._getType(input);\n if (parsedType !== ZodParsedType.undefined) {\n const ctx = this._getOrReturnCtx(input);\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_type,\n expected: ZodParsedType.void,\n received: ctx.parsedType,\n });\n return INVALID;\n }\n return OK(input.data);\n }\n}\nZodVoid.create = (params) => {\n return new ZodVoid({\n typeName: ZodFirstPartyTypeKind.ZodVoid,\n ...processCreateParams(params),\n });\n};\nclass ZodArray extends ZodType {\n _parse(input) {\n const { ctx, status } = this._processInputParams(input);\n const def = this._def;\n if (ctx.parsedType !== ZodParsedType.array) {\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_type,\n expected: ZodParsedType.array,\n received: ctx.parsedType,\n });\n return INVALID;\n }\n if (def.exactLength !== null) {\n const tooBig = ctx.data.length > def.exactLength.value;\n const tooSmall = ctx.data.length < def.exactLength.value;\n if (tooBig || tooSmall) {\n addIssueToContext(ctx, {\n code: tooBig ? ZodIssueCode.too_big : ZodIssueCode.too_small,\n minimum: (tooSmall ? def.exactLength.value : undefined),\n maximum: (tooBig ? def.exactLength.value : undefined),\n type: \"array\",\n inclusive: true,\n exact: true,\n message: def.exactLength.message,\n });\n status.dirty();\n }\n }\n if (def.minLength !== null) {\n if (ctx.data.length < def.minLength.value) {\n addIssueToContext(ctx, {\n code: ZodIssueCode.too_small,\n minimum: def.minLength.value,\n type: \"array\",\n inclusive: true,\n exact: false,\n message: def.minLength.message,\n });\n status.dirty();\n }\n }\n if (def.maxLength !== null) {\n if (ctx.data.length > def.maxLength.value) {\n addIssueToContext(ctx, {\n code: ZodIssueCode.too_big,\n maximum: def.maxLength.value,\n type: \"array\",\n inclusive: true,\n exact: false,\n message: def.maxLength.message,\n });\n status.dirty();\n }\n }\n if (ctx.common.async) {\n return Promise.all([...ctx.data].map((item, i) => {\n return def.type._parseAsync(new ParseInputLazyPath(ctx, item, ctx.path, i));\n })).then((result) => {\n return ParseStatus.mergeArray(status, result);\n });\n }\n const result = [...ctx.data].map((item, i) => {\n return def.type._parseSync(new ParseInputLazyPath(ctx, item, ctx.path, i));\n });\n return ParseStatus.mergeArray(status, result);\n }\n get element() {\n return this._def.type;\n }\n min(minLength, message) {\n return new ZodArray({\n ...this._def,\n minLength: { value: minLength, message: errorUtil.toString(message) },\n });\n }\n max(maxLength, message) {\n return new ZodArray({\n ...this._def,\n maxLength: { value: maxLength, message: errorUtil.toString(message) },\n });\n }\n length(len, message) {\n return new ZodArray({\n ...this._def,\n exactLength: { value: len, message: errorUtil.toString(message) },\n });\n }\n nonempty(message) {\n return this.min(1, message);\n }\n}\nZodArray.create = (schema, params) => {\n return new ZodArray({\n type: schema,\n minLength: null,\n maxLength: null,\n exactLength: null,\n typeName: ZodFirstPartyTypeKind.ZodArray,\n ...processCreateParams(params),\n });\n};\nfunction deepPartialify(schema) {\n if (schema instanceof ZodObject) {\n const newShape = {};\n for (const key in schema.shape) {\n const fieldSchema = schema.shape[key];\n newShape[key] = ZodOptional.create(deepPartialify(fieldSchema));\n }\n return new ZodObject({\n ...schema._def,\n shape: () => newShape,\n });\n }\n else if (schema instanceof ZodArray) {\n return new ZodArray({\n ...schema._def,\n type: deepPartialify(schema.element),\n });\n }\n else if (schema instanceof ZodOptional) {\n return ZodOptional.create(deepPartialify(schema.unwrap()));\n }\n else if (schema instanceof ZodNullable) {\n return ZodNullable.create(deepPartialify(schema.unwrap()));\n }\n else if (schema instanceof ZodTuple) {\n return ZodTuple.create(schema.items.map((item) => deepPartialify(item)));\n }\n else {\n return schema;\n }\n}\nclass ZodObject extends ZodType {\n constructor() {\n super(...arguments);\n this._cached = null;\n /**\n * @deprecated In most cases, this is no longer needed - unknown properties are now silently stripped.\n * If you want to pass through unknown properties, use `.passthrough()` instead.\n */\n this.nonstrict = this.passthrough;\n // extend<\n // Augmentation extends ZodRawShape,\n // NewOutput extends util.flatten<{\n // [k in keyof Augmentation | keyof Output]: k extends keyof Augmentation\n // ? Augmentation[k][\"_output\"]\n // : k extends keyof Output\n // ? Output[k]\n // : never;\n // }>,\n // NewInput extends util.flatten<{\n // [k in keyof Augmentation | keyof Input]: k extends keyof Augmentation\n // ? Augmentation[k][\"_input\"]\n // : k extends keyof Input\n // ? Input[k]\n // : never;\n // }>\n // >(\n // augmentation: Augmentation\n // ): ZodObject<\n // extendShape<T, Augmentation>,\n // UnknownKeys,\n // Catchall,\n // NewOutput,\n // NewInput\n // > {\n // return new ZodObject({\n // ...this._def,\n // shape: () => ({\n // ...this._def.shape(),\n // ...augmentation,\n // }),\n // }) as any;\n // }\n /**\n * @deprecated Use `.extend` instead\n * */\n this.augment = this.extend;\n }\n _getCached() {\n if (this._cached !== null)\n return this._cached;\n const shape = this._def.shape();\n const keys = util.objectKeys(shape);\n return (this._cached = { shape, keys });\n }\n _parse(input) {\n const parsedType = this._getType(input);\n if (parsedType !== ZodParsedType.object) {\n const ctx = this._getOrReturnCtx(input);\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_type,\n expected: ZodParsedType.object,\n received: ctx.parsedType,\n });\n return INVALID;\n }\n const { status, ctx } = this._processInputParams(input);\n const { shape, keys: shapeKeys } = this._getCached();\n const extraKeys = [];\n if (!(this._def.catchall instanceof ZodNever &&\n this._def.unknownKeys === \"strip\")) {\n for (const key in ctx.data) {\n if (!shapeKeys.includes(key)) {\n extraKeys.push(key);\n }\n }\n }\n const pairs = [];\n for (const key of shapeKeys) {\n const keyValidator = shape[key];\n const value = ctx.data[key];\n pairs.push({\n key: { status: \"valid\", value: key },\n value: keyValidator._parse(new ParseInputLazyPath(ctx, value, ctx.path, key)),\n alwaysSet: key in ctx.data,\n });\n }\n if (this._def.catchall instanceof ZodNever) {\n const unknownKeys = this._def.unknownKeys;\n if (unknownKeys === \"passthrough\") {\n for (const key of extraKeys) {\n pairs.push({\n key: { status: \"valid\", value: key },\n value: { status: \"valid\", value: ctx.data[key] },\n });\n }\n }\n else if (unknownKeys === \"strict\") {\n if (extraKeys.length > 0) {\n addIssueToContext(ctx, {\n code: ZodIssueCode.unrecognized_keys,\n keys: extraKeys,\n });\n status.dirty();\n }\n }\n else if (unknownKeys === \"strip\") ;\n else {\n throw new Error(`Internal ZodObject error: invalid unknownKeys value.`);\n }\n }\n else {\n // run catchall validation\n const catchall = this._def.catchall;\n for (const key of extraKeys) {\n const value = ctx.data[key];\n pairs.push({\n key: { status: \"valid\", value: key },\n value: catchall._parse(new ParseInputLazyPath(ctx, value, ctx.path, key) //, ctx.child(key), value, getParsedType(value)\n ),\n alwaysSet: key in ctx.data,\n });\n }\n }\n if (ctx.common.async) {\n return Promise.resolve()\n .then(async () => {\n const syncPairs = [];\n for (const pair of pairs) {\n const key = await pair.key;\n syncPairs.push({\n key,\n value: await pair.value,\n alwaysSet: pair.alwaysSet,\n });\n }\n return syncPairs;\n })\n .then((syncPairs) => {\n return ParseStatus.mergeObjectSync(status, syncPairs);\n });\n }\n else {\n return ParseStatus.mergeObjectSync(status, pairs);\n }\n }\n get shape() {\n return this._def.shape();\n }\n strict(message) {\n errorUtil.errToObj;\n return new ZodObject({\n ...this._def,\n unknownKeys: \"strict\",\n ...(message !== undefined\n ? {\n errorMap: (issue, ctx) => {\n var _a, _b, _c, _d;\n const defaultError = (_c = (_b = (_a = this._def).errorMap) === null || _b === void 0 ? void 0 : _b.call(_a, issue, ctx).message) !== null && _c !== void 0 ? _c : ctx.defaultError;\n if (issue.code === \"unrecognized_keys\")\n return {\n message: (_d = errorUtil.errToObj(message).message) !== null && _d !== void 0 ? _d : defaultError,\n };\n return {\n message: defaultError,\n };\n },\n }\n : {}),\n });\n }\n strip() {\n return new ZodObject({\n ...this._def,\n unknownKeys: \"strip\",\n });\n }\n passthrough() {\n return new ZodObject({\n ...this._def,\n unknownKeys: \"passthrough\",\n });\n }\n // const AugmentFactory =\n // <Def extends ZodObjectDef>(def: Def) =>\n // <Augmentation extends ZodRawShape>(\n // augmentation: Augmentation\n // ): ZodObject<\n // extendShape<ReturnType<Def[\"shape\"]>, Augmentation>,\n // Def[\"unknownKeys\"],\n // Def[\"catchall\"]\n // > => {\n // return new ZodObject({\n // ...def,\n // shape: () => ({\n // ...def.shape(),\n // ...augmentation,\n // }),\n // }) as any;\n // };\n extend(augmentation) {\n return new ZodObject({\n ...this._def,\n shape: () => ({\n ...this._def.shape(),\n ...augmentation,\n }),\n });\n }\n /**\n * Prior to zod@1.0.12 there was a bug in the\n * inferred type of merged objects. Please\n * upgrade if you are experiencing issues.\n */\n merge(merging) {\n const merged = new ZodObject({\n unknownKeys: merging._def.unknownKeys,\n catchall: merging._def.catchall,\n shape: () => ({\n ...this._def.shape(),\n ...merging._def.shape(),\n }),\n typeName: ZodFirstPartyTypeKind.ZodObject,\n });\n return merged;\n }\n // merge<\n // Incoming extends AnyZodObject,\n // Augmentation extends Incoming[\"shape\"],\n // NewOutput extends {\n // [k in keyof Augmentation | keyof Output]: k extends keyof Augmentation\n // ? Augmentation[k][\"_output\"]\n // : k extends keyof Output\n // ? Output[k]\n // : never;\n // },\n // NewInput extends {\n // [k in keyof Augmentation | keyof Input]: k extends keyof Augmentation\n // ? Augmentation[k][\"_input\"]\n // : k extends keyof Input\n // ? Input[k]\n // : never;\n // }\n // >(\n // merging: Incoming\n // ): ZodObject<\n // extendShape<T, ReturnType<Incoming[\"_def\"][\"shape\"]>>,\n // Incoming[\"_def\"][\"unknownKeys\"],\n // Incoming[\"_def\"][\"catchall\"],\n // NewOutput,\n // NewInput\n // > {\n // const merged: any = new ZodObject({\n // unknownKeys: merging._def.unknownKeys,\n // catchall: merging._def.catchall,\n // shape: () =>\n // objectUtil.mergeShapes(this._def.shape(), merging._def.shape()),\n // typeName: ZodFirstPartyTypeKind.ZodObject,\n // }) as any;\n // return merged;\n // }\n setKey(key, schema) {\n return this.augment({ [key]: schema });\n }\n // merge<Incoming extends AnyZodObject>(\n // merging: Incoming\n // ): //ZodObject<T & Incoming[\"_shape\"], UnknownKeys, Catchall> = (merging) => {\n // ZodObject<\n // extendShape<T, ReturnType<Incoming[\"_def\"][\"shape\"]>>,\n // Incoming[\"_def\"][\"unknownKeys\"],\n // Incoming[\"_def\"][\"catchall\"]\n // > {\n // // const mergedShape = objectUtil.mergeShapes(\n // // this._def.shape(),\n // // merging._def.shape()\n // // );\n // const merged: any = new ZodObject({\n // unknownKeys: merging._def.unknownKeys,\n // catchall: merging._def.catchall,\n // shape: () =>\n // objectUtil.mergeShapes(this._def.shape(), merging._def.shape()),\n // typeName: ZodFirstPartyTypeKind.ZodObject,\n // }) as any;\n // return merged;\n // }\n catchall(index) {\n return new ZodObject({\n ...this._def,\n catchall: index,\n });\n }\n pick(mask) {\n const shape = {};\n util.objectKeys(mask).forEach((key) => {\n if (mask[key] && this.shape[key]) {\n shape[key] = this.shape[key];\n }\n });\n return new ZodObject({\n ...this._def,\n shape: () => shape,\n });\n }\n omit(mask) {\n const shape = {};\n util.objectKeys(this.shape).forEach((key) => {\n if (!mask[key]) {\n shape[key] = this.shape[key];\n }\n });\n return new ZodObject({\n ...this._def,\n shape: () => shape,\n });\n }\n /**\n * @deprecated\n */\n deepPartial() {\n return deepPartialify(this);\n }\n partial(mask) {\n const newShape = {};\n util.objectKeys(this.shape).forEach((key) => {\n const fieldSchema = this.shape[key];\n if (mask && !mask[key]) {\n newShape[key] = fieldSchema;\n }\n else {\n newShape[key] = fieldSchema.optional();\n }\n });\n return new ZodObject({\n ...this._def,\n shape: () => newShape,\n });\n }\n required(mask) {\n const newShape = {};\n util.objectKeys(this.shape).forEach((key) => {\n if (mask && !mask[key]) {\n newShape[key] = this.shape[key];\n }\n else {\n const fieldSchema = this.shape[key];\n let newField = fieldSchema;\n while (newField instanceof ZodOptional) {\n newField = newField._def.innerType;\n }\n newShape[key] = newField;\n }\n });\n return new ZodObject({\n ...this._def,\n shape: () => newShape,\n });\n }\n keyof() {\n return createZodEnum(util.objectKeys(this.shape));\n }\n}\nZodObject.create = (shape, params) => {\n return new ZodObject({\n shape: () => shape,\n unknownKeys: \"strip\",\n catchall: ZodNever.create(),\n typeName: ZodFirstPartyTypeKind.ZodObject,\n ...processCreateParams(params),\n });\n};\nZodObject.strictCreate = (shape, params) => {\n return new ZodObject({\n shape: () => shape,\n unknownKeys: \"strict\",\n catchall: ZodNever.create(),\n typeName: ZodFirstPartyTypeKind.ZodObject,\n ...processCreateParams(params),\n });\n};\nZodObject.lazycreate = (shape, params) => {\n return new ZodObject({\n shape,\n unknownKeys: \"strip\",\n catchall: ZodNever.create(),\n typeName: ZodFirstPartyTypeKind.ZodObject,\n ...processCreateParams(params),\n });\n};\nclass ZodUnion extends ZodType {\n _parse(input) {\n const { ctx } = this._processInputParams(input);\n const options = this._def.options;\n function handleResults(results) {\n // return first issue-free validation if it exists\n for (const result of results) {\n if (result.result.status === \"valid\") {\n return result.result;\n }\n }\n for (const result of results) {\n if (result.result.status === \"dirty\") {\n // add issues from dirty option\n ctx.common.issues.push(...result.ctx.common.issues);\n return result.result;\n }\n }\n // return invalid\n const unionErrors = results.map((result) => new ZodError(result.ctx.common.issues));\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_union,\n unionErrors,\n });\n return INVALID;\n }\n if (ctx.common.async) {\n return Promise.all(options.map(async (option) => {\n const childCtx = {\n ...ctx,\n common: {\n ...ctx.common,\n issues: [],\n },\n parent: null,\n };\n return {\n result: await option._parseAsync({\n data: ctx.data,\n path: ctx.path,\n parent: childCtx,\n }),\n ctx: childCtx,\n };\n })).then(handleResults);\n }\n else {\n let dirty = undefined;\n const issues = [];\n for (const option of options) {\n const childCtx = {\n ...ctx,\n common: {\n ...ctx.common,\n issues: [],\n },\n parent: null,\n };\n const result = option._parseSync({\n data: ctx.data,\n path: ctx.path,\n parent: childCtx,\n });\n if (result.status === \"valid\") {\n return result;\n }\n else if (result.status === \"dirty\" && !dirty) {\n dirty = { result, ctx: childCtx };\n }\n if (childCtx.common.issues.length) {\n issues.push(childCtx.common.issues);\n }\n }\n if (dirty) {\n ctx.common.issues.push(...dirty.ctx.common.issues);\n return dirty.result;\n }\n const unionErrors = issues.map((issues) => new ZodError(issues));\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_union,\n unionErrors,\n });\n return INVALID;\n }\n }\n get options() {\n return this._def.options;\n }\n}\nZodUnion.create = (types, params) => {\n return new ZodUnion({\n options: types,\n typeName: ZodFirstPartyTypeKind.ZodUnion,\n ...processCreateParams(params),\n });\n};\n/////////////////////////////////////////////////////\n/////////////////////////////////////////////////////\n////////// //////////\n////////// ZodDiscriminatedUnion //////////\n////////// //////////\n/////////////////////////////////////////////////////\n/////////////////////////////////////////////////////\nconst getDiscriminator = (type) => {\n if (type instanceof ZodLazy) {\n return getDiscriminator(type.schema);\n }\n else if (type instanceof ZodEffects) {\n return getDiscriminator(type.innerType());\n }\n else if (type instanceof ZodLiteral) {\n return [type.value];\n }\n else if (type instanceof ZodEnum) {\n return type.options;\n }\n else if (type instanceof ZodNativeEnum) {\n // eslint-disable-next-line ban/ban\n return Object.keys(type.enum);\n }\n else if (type instanceof ZodDefault) {\n return getDiscriminator(type._def.innerType);\n }\n else if (type instanceof ZodUndefined) {\n return [undefined];\n }\n else if (type instanceof ZodNull) {\n return [null];\n }\n else {\n return null;\n }\n};\nclass ZodDiscriminatedUnion extends ZodType {\n _parse(input) {\n const { ctx } = this._processInputParams(input);\n if (ctx.parsedType !== ZodParsedType.object) {\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_type,\n expected: ZodParsedType.object,\n received: ctx.parsedType,\n });\n return INVALID;\n }\n const discriminator = this.discriminator;\n const discriminatorValue = ctx.data[discriminator];\n const option = this.optionsMap.get(discriminatorValue);\n if (!option) {\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_union_discriminator,\n options: Array.from(this.optionsMap.keys()),\n path: [discriminator],\n });\n return INVALID;\n }\n if (ctx.common.async) {\n return option._parseAsync({\n data: ctx.data,\n path: ctx.path,\n parent: ctx,\n });\n }\n else {\n return option._parseSync({\n data: ctx.data,\n path: ctx.path,\n parent: ctx,\n });\n }\n }\n get discriminator() {\n return this._def.discriminator;\n }\n get options() {\n return this._def.options;\n }\n get optionsMap() {\n return this._def.optionsMap;\n }\n /**\n * The constructor of the discriminated union schema. Its behaviour is very similar to that of the normal z.union() constructor.\n * However, it only allows a union of objects, all of which need to share a discriminator property. This property must\n * have a different value for each object in the union.\n * @param discriminator the name of the discriminator property\n * @param types an array of object schemas\n * @param params\n */\n static create(discriminator, options, params) {\n // Get all the valid discriminator values\n const optionsMap = new Map();\n // try {\n for (const type of options) {\n const discriminatorValues = getDiscriminator(type.shape[discriminator]);\n if (!discriminatorValues) {\n throw new Error(`A discriminator value for key \\`${discriminator}\\` could not be extracted from all schema options`);\n }\n for (const value of discriminatorValues) {\n if (optionsMap.has(value)) {\n throw new Error(`Discriminator property ${String(discriminator)} has duplicate value ${String(value)}`);\n }\n optionsMap.set(value, type);\n }\n }\n return new ZodDiscriminatedUnion({\n typeName: ZodFirstPartyTypeKind.ZodDiscriminatedUnion,\n discriminator,\n options,\n optionsMap,\n ...processCreateParams(params),\n });\n }\n}\nfunction mergeValues(a, b) {\n const aType = getParsedType(a);\n const bType = getParsedType(b);\n if (a === b) {\n return { valid: true, data: a };\n }\n else if (aType === ZodParsedType.object && bType === ZodParsedType.object) {\n const bKeys = util.objectKeys(b);\n const sharedKeys = util\n .objectKeys(a)\n .filter((key) => bKeys.indexOf(key) !== -1);\n const newObj = { ...a, ...b };\n for (const key of sharedKeys) {\n const sharedValue = mergeValues(a[key], b[key]);\n if (!sharedValue.valid) {\n return { valid: false };\n }\n newObj[key] = sharedValue.data;\n }\n return { valid: true, data: newObj };\n }\n else if (aType === ZodParsedType.array && bType === ZodParsedType.array) {\n if (a.length !== b.length) {\n return { valid: false };\n }\n const newArray = [];\n for (let index = 0; index < a.length; index++) {\n const itemA = a[index];\n const itemB = b[index];\n const sharedValue = mergeValues(itemA, itemB);\n if (!sharedValue.valid) {\n return { valid: false };\n }\n newArray.push(sharedValue.data);\n }\n return { valid: true, data: newArray };\n }\n else if (aType === ZodParsedType.date &&\n bType === ZodParsedType.date &&\n +a === +b) {\n return { valid: true, data: a };\n }\n else {\n return { valid: false };\n }\n}\nclass ZodIntersection extends ZodType {\n _parse(input) {\n const { status, ctx } = this._processInputParams(input);\n const handleParsed = (parsedLeft, parsedRight) => {\n if (isAborted(parsedLeft) || isAborted(parsedRight)) {\n return INVALID;\n }\n const merged = mergeValues(parsedLeft.value, parsedRight.value);\n if (!merged.valid) {\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_intersection_types,\n });\n return INVALID;\n }\n if (isDirty(parsedLeft) || isDirty(parsedRight)) {\n status.dirty();\n }\n return { status: status.value, value: merged.data };\n };\n if (ctx.common.async) {\n return Promise.all([\n this._def.left._parseAsync({\n data: ctx.data,\n path: ctx.path,\n parent: ctx,\n }),\n this._def.right._parseAsync({\n data: ctx.data,\n path: ctx.path,\n parent: ctx,\n }),\n ]).then(([left, right]) => handleParsed(left, right));\n }\n else {\n return handleParsed(this._def.left._parseSync({\n data: ctx.data,\n path: ctx.path,\n parent: ctx,\n }), this._def.right._parseSync({\n data: ctx.data,\n path: ctx.path,\n parent: ctx,\n }));\n }\n }\n}\nZodIntersection.create = (left, right, params) => {\n return new ZodIntersection({\n left: left,\n right: right,\n typeName: ZodFirstPartyTypeKind.ZodIntersection,\n ...processCreateParams(params),\n });\n};\nclass ZodTuple extends ZodType {\n _parse(input) {\n const { status, ctx } = this._processInputParams(input);\n if (ctx.parsedType !== ZodParsedType.array) {\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_type,\n expected: ZodParsedType.array,\n received: ctx.parsedType,\n });\n return INVALID;\n }\n if (ctx.data.length < this._def.items.length) {\n addIssueToContext(ctx, {\n code: ZodIssueCode.too_small,\n minimum: this._def.items.length,\n inclusive: true,\n exact: false,\n type: \"array\",\n });\n return INVALID;\n }\n const rest = this._def.rest;\n if (!rest && ctx.data.length > this._def.items.length) {\n addIssueToContext(ctx, {\n code: ZodIssueCode.too_big,\n maximum: this._def.items.length,\n inclusive: true,\n exact: false,\n type: \"array\",\n });\n status.dirty();\n }\n const items = [...ctx.data]\n .map((item, itemIndex) => {\n const schema = this._def.items[itemIndex] || this._def.rest;\n if (!schema)\n return null;\n return schema._parse(new ParseInputLazyPath(ctx, item, ctx.path, itemIndex));\n })\n .filter((x) => !!x); // filter nulls\n if (ctx.common.async) {\n return Promise.all(items).then((results) => {\n return ParseStatus.mergeArray(status, results);\n });\n }\n else {\n return ParseStatus.mergeArray(status, items);\n }\n }\n get items() {\n return this._def.items;\n }\n rest(rest) {\n return new ZodTuple({\n ...this._def,\n rest,\n });\n }\n}\nZodTuple.create = (schemas, params) => {\n if (!Array.isArray(schemas)) {\n throw new Error(\"You must pass an array of schemas to z.tuple([ ... ])\");\n }\n return new ZodTuple({\n items: schemas,\n typeName: ZodFirstPartyTypeKind.ZodTuple,\n rest: null,\n ...processCreateParams(params),\n });\n};\nclass ZodRecord extends ZodType {\n get keySchema() {\n return this._def.keyType;\n }\n get valueSchema() {\n return this._def.valueType;\n }\n _parse(input) {\n const { status, ctx } = this._processInputParams(input);\n if (ctx.parsedType !== ZodParsedType.object) {\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_type,\n expected: ZodParsedType.object,\n received: ctx.parsedType,\n });\n return INVALID;\n }\n const pairs = [];\n const keyType = this._def.keyType;\n const valueType = this._def.valueType;\n for (const key in ctx.data) {\n pairs.push({\n key: keyType._parse(new ParseInputLazyPath(ctx, key, ctx.path, key)),\n value: valueType._parse(new ParseInputLazyPath(ctx, ctx.data[key], ctx.path, key)),\n });\n }\n if (ctx.common.async) {\n return ParseStatus.mergeObjectAsync(status, pairs);\n }\n else {\n return ParseStatus.mergeObjectSync(status, pairs);\n }\n }\n get element() {\n return this._def.valueType;\n }\n static create(first, second, third) {\n if (second instanceof ZodType) {\n return new ZodRecord({\n keyType: first,\n valueType: second,\n typeName: ZodFirstPartyTypeKind.ZodRecord,\n ...processCreateParams(third),\n });\n }\n return new ZodRecord({\n keyType: ZodString.create(),\n valueType: first,\n typeName: ZodFirstPartyTypeKind.ZodRecord,\n ...processCreateParams(second),\n });\n }\n}\nclass ZodMap extends ZodType {\n get keySchema() {\n return this._def.keyType;\n }\n get valueSchema() {\n return this._def.valueType;\n }\n _parse(input) {\n const { status, ctx } = this._processInputParams(input);\n if (ctx.parsedType !== ZodParsedType.map) {\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_type,\n expected: ZodParsedType.map,\n received: ctx.parsedType,\n });\n return INVALID;\n }\n const keyType = this._def.keyType;\n const valueType = this._def.valueType;\n const pairs = [...ctx.data.entries()].map(([key, value], index) => {\n return {\n key: keyType._parse(new ParseInputLazyPath(ctx, key, ctx.path, [index, \"key\"])),\n value: valueType._parse(new ParseInputLazyPath(ctx, value, ctx.path, [index, \"value\"])),\n };\n });\n if (ctx.common.async) {\n const finalMap = new Map();\n return Promise.resolve().then(async () => {\n for (const pair of pairs) {\n const key = await pair.key;\n const value = await pair.value;\n if (key.status === \"aborted\" || value.status === \"aborted\") {\n return INVALID;\n }\n if (key.status === \"dirty\" || value.status === \"dirty\") {\n status.dirty();\n }\n finalMap.set(key.value, value.value);\n }\n return { status: status.value, value: finalMap };\n });\n }\n else {\n const finalMap = new Map();\n for (const pair of pairs) {\n const key = pair.key;\n const value = pair.value;\n if (key.status === \"aborted\" || value.status === \"aborted\") {\n return INVALID;\n }\n if (key.status === \"dirty\" || value.status === \"dirty\") {\n status.dirty();\n }\n finalMap.set(key.value, value.value);\n }\n return { status: status.value, value: finalMap };\n }\n }\n}\nZodMap.create = (keyType, valueType, params) => {\n return new ZodMap({\n valueType,\n keyType,\n typeName: ZodFirstPartyTypeKind.ZodMap,\n ...processCreateParams(params),\n });\n};\nclass ZodSet extends ZodType {\n _parse(input) {\n const { status, ctx } = this._processInputParams(input);\n if (ctx.parsedType !== ZodParsedType.set) {\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_type,\n expected: ZodParsedType.set,\n received: ctx.parsedType,\n });\n return INVALID;\n }\n const def = this._def;\n if (def.minSize !== null) {\n if (ctx.data.size < def.minSize.value) {\n addIssueToContext(ctx, {\n code: ZodIssueCode.too_small,\n minimum: def.minSize.value,\n type: \"set\",\n inclusive: true,\n exact: false,\n message: def.minSize.message,\n });\n status.dirty();\n }\n }\n if (def.maxSize !== null) {\n if (ctx.data.size > def.maxSize.value) {\n addIssueToContext(ctx, {\n code: ZodIssueCode.too_big,\n maximum: def.maxSize.value,\n type: \"set\",\n inclusive: true,\n exact: false,\n message: def.maxSize.message,\n });\n status.dirty();\n }\n }\n const valueType = this._def.valueType;\n function finalizeSet(elements) {\n const parsedSet = new Set();\n for (const element of elements) {\n if (element.status === \"aborted\")\n return INVALID;\n if (element.status === \"dirty\")\n status.dirty();\n parsedSet.add(element.value);\n }\n return { status: status.value, value: parsedSet };\n }\n const elements = [...ctx.data.values()].map((item, i) => valueType._parse(new ParseInputLazyPath(ctx, item, ctx.path, i)));\n if (ctx.common.async) {\n return Promise.all(elements).then((elements) => finalizeSet(elements));\n }\n else {\n return finalizeSet(elements);\n }\n }\n min(minSize, message) {\n return new ZodSet({\n ...this._def,\n minSize: { value: minSize, message: errorUtil.toString(message) },\n });\n }\n max(maxSize, message) {\n return new ZodSet({\n ...this._def,\n maxSize: { value: maxSize, message: errorUtil.toString(message) },\n });\n }\n size(size, message) {\n return this.min(size, message).max(size, message);\n }\n nonempty(message) {\n return this.min(1, message);\n }\n}\nZodSet.create = (valueType, params) => {\n return new ZodSet({\n valueType,\n minSize: null,\n maxSize: null,\n typeName: ZodFirstPartyTypeKind.ZodSet,\n ...processCreateParams(params),\n });\n};\nclass ZodFunction extends ZodType {\n constructor() {\n super(...arguments);\n this.validate = this.implement;\n }\n _parse(input) {\n const { ctx } = this._processInputParams(input);\n if (ctx.parsedType !== ZodParsedType.function) {\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_type,\n expected: ZodParsedType.function,\n received: ctx.parsedType,\n });\n return INVALID;\n }\n function makeArgsIssue(args, error) {\n return makeIssue({\n data: args,\n path: ctx.path,\n errorMaps: [\n ctx.common.contextualErrorMap,\n ctx.schemaErrorMap,\n getErrorMap(),\n errorMap,\n ].filter((x) => !!x),\n issueData: {\n code: ZodIssueCode.invalid_arguments,\n argumentsError: error,\n },\n });\n }\n function makeReturnsIssue(returns, error) {\n return makeIssue({\n data: returns,\n path: ctx.path,\n errorMaps: [\n ctx.common.contextualErrorMap,\n ctx.schemaErrorMap,\n getErrorMap(),\n errorMap,\n ].filter((x) => !!x),\n issueData: {\n code: ZodIssueCode.invalid_return_type,\n returnTypeError: error,\n },\n });\n }\n const params = { errorMap: ctx.common.contextualErrorMap };\n const fn = ctx.data;\n if (this._def.returns instanceof ZodPromise) {\n // Would love a way to avoid disabling this rule, but we need\n // an alias (using an arrow function was what caused 2651).\n // eslint-disable-next-line @typescript-eslint/no-this-alias\n const me = this;\n return OK(async function (...args) {\n const error = new ZodError([]);\n const parsedArgs = await me._def.args\n .parseAsync(args, params)\n .catch((e) => {\n error.addIssue(makeArgsIssue(args, e));\n throw error;\n });\n const result = await Reflect.apply(fn, this, parsedArgs);\n const parsedReturns = await me._def.returns._def.type\n .parseAsync(result, params)\n .catch((e) => {\n error.addIssue(makeReturnsIssue(result, e));\n throw error;\n });\n return parsedReturns;\n });\n }\n else {\n // Would love a way to avoid disabling this rule, but we need\n // an alias (using an arrow function was what caused 2651).\n // eslint-disable-next-line @typescript-eslint/no-this-alias\n const me = this;\n return OK(function (...args) {\n const parsedArgs = me._def.args.safeParse(args, params);\n if (!parsedArgs.success) {\n throw new ZodError([makeArgsIssue(args, parsedArgs.error)]);\n }\n const result = Reflect.apply(fn, this, parsedArgs.data);\n const parsedReturns = me._def.returns.safeParse(result, params);\n if (!parsedReturns.success) {\n throw new ZodError([makeReturnsIssue(result, parsedReturns.error)]);\n }\n return parsedReturns.data;\n });\n }\n }\n parameters() {\n return this._def.args;\n }\n returnType() {\n return this._def.returns;\n }\n args(...items) {\n return new ZodFunction({\n ...this._def,\n args: ZodTuple.create(items).rest(ZodUnknown.create()),\n });\n }\n returns(returnType) {\n return new ZodFunction({\n ...this._def,\n returns: returnType,\n });\n }\n implement(func) {\n const validatedFunc = this.parse(func);\n return validatedFunc;\n }\n strictImplement(func) {\n const validatedFunc = this.parse(func);\n return validatedFunc;\n }\n static create(args, returns, params) {\n return new ZodFunction({\n args: (args\n ? args\n : ZodTuple.create([]).rest(ZodUnknown.create())),\n returns: returns || ZodUnknown.create(),\n typeName: ZodFirstPartyTypeKind.ZodFunction,\n ...processCreateParams(params),\n });\n }\n}\nclass ZodLazy extends ZodType {\n get schema() {\n return this._def.getter();\n }\n _parse(input) {\n const { ctx } = this._processInputParams(input);\n const lazySchema = this._def.getter();\n return lazySchema._parse({ data: ctx.data, path: ctx.path, parent: ctx });\n }\n}\nZodLazy.create = (getter, params) => {\n return new ZodLazy({\n getter: getter,\n typeName: ZodFirstPartyTypeKind.ZodLazy,\n ...processCreateParams(params),\n });\n};\nclass ZodLiteral extends ZodType {\n _parse(input) {\n if (input.data !== this._def.value) {\n const ctx = this._getOrReturnCtx(input);\n addIssueToContext(ctx, {\n received: ctx.data,\n code: ZodIssueCode.invalid_literal,\n expected: this._def.value,\n });\n return INVALID;\n }\n return { status: \"valid\", value: input.data };\n }\n get value() {\n return this._def.value;\n }\n}\nZodLiteral.create = (value, params) => {\n return new ZodLiteral({\n value: value,\n typeName: ZodFirstPartyTypeKind.ZodLiteral,\n ...processCreateParams(params),\n });\n};\nfunction createZodEnum(values, params) {\n return new ZodEnum({\n values,\n typeName: ZodFirstPartyTypeKind.ZodEnum,\n ...processCreateParams(params),\n });\n}\nclass ZodEnum extends ZodType {\n _parse(input) {\n if (typeof input.data !== \"string\") {\n const ctx = this._getOrReturnCtx(input);\n const expectedValues = this._def.values;\n addIssueToContext(ctx, {\n expected: util.joinValues(expectedValues),\n received: ctx.parsedType,\n code: ZodIssueCode.invalid_type,\n });\n return INVALID;\n }\n if (this._def.values.indexOf(input.data) === -1) {\n const ctx = this._getOrReturnCtx(input);\n const expectedValues = this._def.values;\n addIssueToContext(ctx, {\n received: ctx.data,\n code: ZodIssueCode.invalid_enum_value,\n options: expectedValues,\n });\n return INVALID;\n }\n return OK(input.data);\n }\n get options() {\n return this._def.values;\n }\n get enum() {\n const enumValues = {};\n for (const val of this._def.values) {\n enumValues[val] = val;\n }\n return enumValues;\n }\n get Values() {\n const enumValues = {};\n for (const val of this._def.values) {\n enumValues[val] = val;\n }\n return enumValues;\n }\n get Enum() {\n const enumValues = {};\n for (const val of this._def.values) {\n enumValues[val] = val;\n }\n return enumValues;\n }\n extract(values) {\n return ZodEnum.create(values);\n }\n exclude(values) {\n return ZodEnum.create(this.options.filter((opt) => !values.includes(opt)));\n }\n}\nZodEnum.create = createZodEnum;\nclass ZodNativeEnum extends ZodType {\n _parse(input) {\n const nativeEnumValues = util.getValidEnumValues(this._def.values);\n const ctx = this._getOrReturnCtx(input);\n if (ctx.parsedType !== ZodParsedType.string &&\n ctx.parsedType !== ZodParsedType.number) {\n const expectedValues = util.objectValues(nativeEnumValues);\n addIssueToContext(ctx, {\n expected: util.joinValues(expectedValues),\n received: ctx.parsedType,\n code: ZodIssueCode.invalid_type,\n });\n return INVALID;\n }\n if (nativeEnumValues.indexOf(input.data) === -1) {\n const expectedValues = util.objectValues(nativeEnumValues);\n addIssueToContext(ctx, {\n received: ctx.data,\n code: ZodIssueCode.invalid_enum_value,\n options: expectedValues,\n });\n return INVALID;\n }\n return OK(input.data);\n }\n get enum() {\n return this._def.values;\n }\n}\nZodNativeEnum.create = (values, params) => {\n return new ZodNativeEnum({\n values: values,\n typeName: ZodFirstPartyTypeKind.ZodNativeEnum,\n ...processCreateParams(params),\n });\n};\nclass ZodPromise extends ZodType {\n unwrap() {\n return this._def.type;\n }\n _parse(input) {\n const { ctx } = this._processInputParams(input);\n if (ctx.parsedType !== ZodParsedType.promise &&\n ctx.common.async === false) {\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_type,\n expected: ZodParsedType.promise,\n received: ctx.parsedType,\n });\n return INVALID;\n }\n const promisified = ctx.parsedType === ZodParsedType.promise\n ? ctx.data\n : Promise.resolve(ctx.data);\n return OK(promisified.then((data) => {\n return this._def.type.parseAsync(data, {\n path: ctx.path,\n errorMap: ctx.common.contextualErrorMap,\n });\n }));\n }\n}\nZodPromise.create = (schema, params) => {\n return new ZodPromise({\n type: schema,\n typeName: ZodFirstPartyTypeKind.ZodPromise,\n ...processCreateParams(params),\n });\n};\nclass ZodEffects extends ZodType {\n innerType() {\n return this._def.schema;\n }\n sourceType() {\n return this._def.schema._def.typeName === ZodFirstPartyTypeKind.ZodEffects\n ? this._def.schema.sourceType()\n : this._def.schema;\n }\n _parse(input) {\n const { status, ctx } = this._processInputParams(input);\n const effect = this._def.effect || null;\n const checkCtx = {\n addIssue: (arg) => {\n addIssueToContext(ctx, arg);\n if (arg.fatal) {\n status.abort();\n }\n else {\n status.dirty();\n }\n },\n get path() {\n return ctx.path;\n },\n };\n checkCtx.addIssue = checkCtx.addIssue.bind(checkCtx);\n if (effect.type === \"preprocess\") {\n const processed = effect.transform(ctx.data, checkCtx);\n if (ctx.common.issues.length) {\n return {\n status: \"dirty\",\n value: ctx.data,\n };\n }\n if (ctx.common.async) {\n return Promise.resolve(processed).then((processed) => {\n return this._def.schema._parseAsync({\n data: processed,\n path: ctx.path,\n parent: ctx,\n });\n });\n }\n else {\n return this._def.schema._parseSync({\n data: processed,\n path: ctx.path,\n parent: ctx,\n });\n }\n }\n if (effect.type === \"refinement\") {\n const executeRefinement = (acc\n // effect: RefinementEffect<any>\n ) => {\n const result = effect.refinement(acc, checkCtx);\n if (ctx.common.async) {\n return Promise.resolve(result);\n }\n if (result instanceof Promise) {\n throw new Error(\"Async refinement encountered during synchronous parse operation. Use .parseAsync instead.\");\n }\n return acc;\n };\n if (ctx.common.async === false) {\n const inner = this._def.schema._parseSync({\n data: ctx.data,\n path: ctx.path,\n parent: ctx,\n });\n if (inner.status === \"aborted\")\n return INVALID;\n if (inner.status === \"dirty\")\n status.dirty();\n // return value is ignored\n executeRefinement(inner.value);\n return { status: status.value, value: inner.value };\n }\n else {\n return this._def.schema\n ._parseAsync({ data: ctx.data, path: ctx.path, parent: ctx })\n .then((inner) => {\n if (inner.status === \"aborted\")\n return INVALID;\n if (inner.status === \"dirty\")\n status.dirty();\n return executeRefinement(inner.value).then(() => {\n return { status: status.value, value: inner.value };\n });\n });\n }\n }\n if (effect.type === \"transform\") {\n if (ctx.common.async === false) {\n const base = this._def.schema._parseSync({\n data: ctx.data,\n path: ctx.path,\n parent: ctx,\n });\n if (!isValid(base))\n return base;\n const result = effect.transform(base.value, checkCtx);\n if (result instanceof Promise) {\n throw new Error(`Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.`);\n }\n return { status: status.value, value: result };\n }\n else {\n return this._def.schema\n ._parseAsync({ data: ctx.data, path: ctx.path, parent: ctx })\n .then((base) => {\n if (!isValid(base))\n return base;\n return Promise.resolve(effect.transform(base.value, checkCtx)).then((result) => ({ status: status.value, value: result }));\n });\n }\n }\n util.assertNever(effect);\n }\n}\nZodEffects.create = (schema, effect, params) => {\n return new ZodEffects({\n schema,\n typeName: ZodFirstPartyTypeKind.ZodEffects,\n effect,\n ...processCreateParams(params),\n });\n};\nZodEffects.createWithPreprocess = (preprocess, schema, params) => {\n return new ZodEffects({\n schema,\n effect: { type: \"preprocess\", transform: preprocess },\n typeName: ZodFirstPartyTypeKind.ZodEffects,\n ...processCreateParams(params),\n });\n};\nclass ZodOptional extends ZodType {\n _parse(input) {\n const parsedType = this._getType(input);\n if (parsedType === ZodParsedType.undefined) {\n return OK(undefined);\n }\n return this._def.innerType._parse(input);\n }\n unwrap() {\n return this._def.innerType;\n }\n}\nZodOptional.create = (type, params) => {\n return new ZodOptional({\n innerType: type,\n typeName: ZodFirstPartyTypeKind.ZodOptional,\n ...processCreateParams(params),\n });\n};\nclass ZodNullable extends ZodType {\n _parse(input) {\n const parsedType = this._getType(input);\n if (parsedType === ZodParsedType.null) {\n return OK(null);\n }\n return this._def.innerType._parse(input);\n }\n unwrap() {\n return this._def.innerType;\n }\n}\nZodNullable.create = (type, params) => {\n return new ZodNullable({\n innerType: type,\n typeName: ZodFirstPartyTypeKind.ZodNullable,\n ...processCreateParams(params),\n });\n};\nclass ZodDefault extends ZodType {\n _parse(input) {\n const { ctx } = this._processInputParams(input);\n let data = ctx.data;\n if (ctx.parsedType === ZodParsedType.undefined) {\n data = this._def.defaultValue();\n }\n return this._def.innerType._parse({\n data,\n path: ctx.path,\n parent: ctx,\n });\n }\n removeDefault() {\n return this._def.innerType;\n }\n}\nZodDefault.create = (type, params) => {\n return new ZodDefault({\n innerType: type,\n typeName: ZodFirstPartyTypeKind.ZodDefault,\n defaultValue: typeof params.default === \"function\"\n ? params.default\n : () => params.default,\n ...processCreateParams(params),\n });\n};\nclass ZodCatch extends ZodType {\n _parse(input) {\n const { ctx } = this._processInputParams(input);\n // newCtx is used to not collect issues from inner types in ctx\n const newCtx = {\n ...ctx,\n common: {\n ...ctx.common,\n issues: [],\n },\n };\n const result = this._def.innerType._parse({\n data: newCtx.data,\n path: newCtx.path,\n parent: {\n ...newCtx,\n },\n });\n if (isAsync(result)) {\n return result.then((result) => {\n return {\n status: \"valid\",\n value: result.status === \"valid\"\n ? result.value\n : this._def.catchValue({\n get error() {\n return new ZodError(newCtx.common.issues);\n },\n input: newCtx.data,\n }),\n };\n });\n }\n else {\n return {\n status: \"valid\",\n value: result.status === \"valid\"\n ? result.value\n : this._def.catchValue({\n get error() {\n return new ZodError(newCtx.common.issues);\n },\n input: newCtx.data,\n }),\n };\n }\n }\n removeCatch() {\n return this._def.innerType;\n }\n}\nZodCatch.create = (type, params) => {\n return new ZodCatch({\n innerType: type,\n typeName: ZodFirstPartyTypeKind.ZodCatch,\n catchValue: typeof params.catch === \"function\" ? params.catch : () => params.catch,\n ...processCreateParams(params),\n });\n};\nclass ZodNaN extends ZodType {\n _parse(input) {\n const parsedType = this._getType(input);\n if (parsedType !== ZodParsedType.nan) {\n const ctx = this._getOrReturnCtx(input);\n addIssueToContext(ctx, {\n code: ZodIssueCode.invalid_type,\n expected: ZodParsedType.nan,\n received: ctx.parsedType,\n });\n return INVALID;\n }\n return { status: \"valid\", value: input.data };\n }\n}\nZodNaN.create = (params) => {\n return new ZodNaN({\n typeName: ZodFirstPartyTypeKind.ZodNaN,\n ...processCreateParams(params),\n });\n};\nconst BRAND = Symbol(\"zod_brand\");\nclass ZodBranded extends ZodType {\n _parse(input) {\n const { ctx } = this._processInputParams(input);\n const data = ctx.data;\n return this._def.type._parse({\n data,\n path: ctx.path,\n parent: ctx,\n });\n }\n unwrap() {\n return this._def.type;\n }\n}\nclass ZodPipeline extends ZodType {\n _parse(input) {\n const { status, ctx } = this._processInputParams(input);\n if (ctx.common.async) {\n const handleAsync = async () => {\n const inResult = await this._def.in._parseAsync({\n data: ctx.data,\n path: ctx.path,\n parent: ctx,\n });\n if (inResult.status === \"aborted\")\n return INVALID;\n if (inResult.status === \"dirty\") {\n status.dirty();\n return DIRTY(inResult.value);\n }\n else {\n return this._def.out._parseAsync({\n data: inResult.value,\n path: ctx.path,\n parent: ctx,\n });\n }\n };\n return handleAsync();\n }\n else {\n const inResult = this._def.in._parseSync({\n data: ctx.data,\n path: ctx.path,\n parent: ctx,\n });\n if (inResult.status === \"aborted\")\n return INVALID;\n if (inResult.status === \"dirty\") {\n status.dirty();\n return {\n status: \"dirty\",\n value: inResult.value,\n };\n }\n else {\n return this._def.out._parseSync({\n data: inResult.value,\n path: ctx.path,\n parent: ctx,\n });\n }\n }\n }\n static create(a, b) {\n return new ZodPipeline({\n in: a,\n out: b,\n typeName: ZodFirstPartyTypeKind.ZodPipeline,\n });\n }\n}\nclass ZodReadonly extends ZodType {\n _parse(input) {\n const result = this._def.innerType._parse(input);\n if (isValid(result)) {\n result.value = Object.freeze(result.value);\n }\n return result;\n }\n}\nZodReadonly.create = (type, params) => {\n return new ZodReadonly({\n innerType: type,\n typeName: ZodFirstPartyTypeKind.ZodReadonly,\n ...processCreateParams(params),\n });\n};\nconst custom = (check, params = {}, \n/**\n * @deprecated\n *\n * Pass `fatal` into the params object instead:\n *\n * ```ts\n * z.string().custom((val) => val.length > 5, { fatal: false })\n * ```\n *\n */\nfatal) => {\n if (check)\n return ZodAny.create().superRefine((data, ctx) => {\n var _a, _b;\n if (!check(data)) {\n const p = typeof params === \"function\"\n ? params(data)\n : typeof params === \"string\"\n ? { message: params }\n : params;\n const _fatal = (_b = (_a = p.fatal) !== null && _a !== void 0 ? _a : fatal) !== null && _b !== void 0 ? _b : true;\n const p2 = typeof p === \"string\" ? { message: p } : p;\n ctx.addIssue({ code: \"custom\", ...p2, fatal: _fatal });\n }\n });\n return ZodAny.create();\n};\nconst late = {\n object: ZodObject.lazycreate,\n};\nvar ZodFirstPartyTypeKind;\n(function (ZodFirstPartyTypeKind) {\n ZodFirstPartyTypeKind[\"ZodString\"] = \"ZodString\";\n ZodFirstPartyTypeKind[\"ZodNumber\"] = \"ZodNumber\";\n ZodFirstPartyTypeKind[\"ZodNaN\"] = \"ZodNaN\";\n ZodFirstPartyTypeKind[\"ZodBigInt\"] = \"ZodBigInt\";\n ZodFirstPartyTypeKind[\"ZodBoolean\"] = \"ZodBoolean\";\n ZodFirstPartyTypeKind[\"ZodDate\"] = \"ZodDate\";\n ZodFirstPartyTypeKind[\"ZodSymbol\"] = \"ZodSymbol\";\n ZodFirstPartyTypeKind[\"ZodUndefined\"] = \"ZodUndefined\";\n ZodFirstPartyTypeKind[\"ZodNull\"] = \"ZodNull\";\n ZodFirstPartyTypeKind[\"ZodAny\"] = \"ZodAny\";\n ZodFirstPartyTypeKind[\"ZodUnknown\"] = \"ZodUnknown\";\n ZodFirstPartyTypeKind[\"ZodNever\"] = \"ZodNever\";\n ZodFirstPartyTypeKind[\"ZodVoid\"] = \"ZodVoid\";\n ZodFirstPartyTypeKind[\"ZodArray\"] = \"ZodArray\";\n ZodFirstPartyTypeKind[\"ZodObject\"] = \"ZodObject\";\n ZodFirstPartyTypeKind[\"ZodUnion\"] = \"ZodUnion\";\n ZodFirstPartyTypeKind[\"ZodDiscriminatedUnion\"] = \"ZodDiscriminatedUnion\";\n ZodFirstPartyTypeKind[\"ZodIntersection\"] = \"ZodIntersection\";\n ZodFirstPartyTypeKind[\"ZodTuple\"] = \"ZodTuple\";\n ZodFirstPartyTypeKind[\"ZodRecord\"] = \"ZodRecord\";\n ZodFirstPartyTypeKind[\"ZodMap\"] = \"ZodMap\";\n ZodFirstPartyTypeKind[\"ZodSet\"] = \"ZodSet\";\n ZodFirstPartyTypeKind[\"ZodFunction\"] = \"ZodFunction\";\n ZodFirstPartyTypeKind[\"ZodLazy\"] = \"ZodLazy\";\n ZodFirstPartyTypeKind[\"ZodLiteral\"] = \"ZodLiteral\";\n ZodFirstPartyTypeKind[\"ZodEnum\"] = \"ZodEnum\";\n ZodFirstPartyTypeKind[\"ZodEffects\"] = \"ZodEffects\";\n ZodFirstPartyTypeKind[\"ZodNativeEnum\"] = \"ZodNativeEnum\";\n ZodFirstPartyTypeKind[\"ZodOptional\"] = \"ZodOptional\";\n ZodFirstPartyTypeKind[\"ZodNullable\"] = \"ZodNullable\";\n ZodFirstPartyTypeKind[\"ZodDefault\"] = \"ZodDefault\";\n ZodFirstPartyTypeKind[\"ZodCatch\"] = \"ZodCatch\";\n ZodFirstPartyTypeKind[\"ZodPromise\"] = \"ZodPromise\";\n ZodFirstPartyTypeKind[\"ZodBranded\"] = \"ZodBranded\";\n ZodFirstPartyTypeKind[\"ZodPipeline\"] = \"ZodPipeline\";\n ZodFirstPartyTypeKind[\"ZodReadonly\"] = \"ZodReadonly\";\n})(ZodFirstPartyTypeKind || (ZodFirstPartyTypeKind = {}));\nconst instanceOfType = (\n// const instanceOfType = <T extends new (...args: any[]) => any>(\ncls, params = {\n message: `Input not instance of ${cls.name}`,\n}) => custom((data) => data instanceof cls, params);\nconst stringType = ZodString.create;\nconst numberType = ZodNumber.create;\nconst nanType = ZodNaN.create;\nconst bigIntType = ZodBigInt.create;\nconst booleanType = ZodBoolean.create;\nconst dateType = ZodDate.create;\nconst symbolType = ZodSymbol.create;\nconst undefinedType = ZodUndefined.create;\nconst nullType = ZodNull.create;\nconst anyType = ZodAny.create;\nconst unknownType = ZodUnknown.create;\nconst neverType = ZodNever.create;\nconst voidType = ZodVoid.create;\nconst arrayType = ZodArray.create;\nconst objectType = ZodObject.create;\nconst strictObjectType = ZodObject.strictCreate;\nconst unionType = ZodUnion.create;\nconst discriminatedUnionType = ZodDiscriminatedUnion.create;\nconst intersectionType = ZodIntersection.create;\nconst tupleType = ZodTuple.create;\nconst recordType = ZodRecord.create;\nconst mapType = ZodMap.create;\nconst setType = ZodSet.create;\nconst functionType = ZodFunction.create;\nconst lazyType = ZodLazy.create;\nconst literalType = ZodLiteral.create;\nconst enumType = ZodEnum.create;\nconst nativeEnumType = ZodNativeEnum.create;\nconst promiseType = ZodPromise.create;\nconst effectsType = ZodEffects.create;\nconst optionalType = ZodOptional.create;\nconst nullableType = ZodNullable.create;\nconst preprocessType = ZodEffects.createWithPreprocess;\nconst pipelineType = ZodPipeline.create;\nconst ostring = () => stringType().optional();\nconst onumber = () => numberType().optional();\nconst oboolean = () => booleanType().optional();\nconst coerce = {\n string: ((arg) => ZodString.create({ ...arg, coerce: true })),\n number: ((arg) => ZodNumber.create({ ...arg, coerce: true })),\n boolean: ((arg) => ZodBoolean.create({\n ...arg,\n coerce: true,\n })),\n bigint: ((arg) => ZodBigInt.create({ ...arg, coerce: true })),\n date: ((arg) => ZodDate.create({ ...arg, coerce: true })),\n};\nconst NEVER = INVALID;\n\nvar z = /*#__PURE__*/Object.freeze({\n __proto__: null,\n defaultErrorMap: errorMap,\n setErrorMap: setErrorMap,\n getErrorMap: getErrorMap,\n makeIssue: makeIssue,\n EMPTY_PATH: EMPTY_PATH,\n addIssueToContext: addIssueToContext,\n ParseStatus: ParseStatus,\n INVALID: INVALID,\n DIRTY: DIRTY,\n OK: OK,\n isAborted: isAborted,\n isDirty: isDirty,\n isValid: isValid,\n isAsync: isAsync,\n get util () { return util; },\n get objectUtil () { return objectUtil; },\n ZodParsedType: ZodParsedType,\n getParsedType: getParsedType,\n ZodType: ZodType,\n ZodString: ZodString,\n ZodNumber: ZodNumber,\n ZodBigInt: ZodBigInt,\n ZodBoolean: ZodBoolean,\n ZodDate: ZodDate,\n ZodSymbol: ZodSymbol,\n ZodUndefined: ZodUndefined,\n ZodNull: ZodNull,\n ZodAny: ZodAny,\n ZodUnknown: ZodUnknown,\n ZodNever: ZodNever,\n ZodVoid: ZodVoid,\n ZodArray: ZodArray,\n ZodObject: ZodObject,\n ZodUnion: ZodUnion,\n ZodDiscriminatedUnion: ZodDiscriminatedUnion,\n ZodIntersection: ZodIntersection,\n ZodTuple: ZodTuple,\n ZodRecord: ZodRecord,\n ZodMap: ZodMap,\n ZodSet: ZodSet,\n ZodFunction: ZodFunction,\n ZodLazy: ZodLazy,\n ZodLiteral: ZodLiteral,\n ZodEnum: ZodEnum,\n ZodNativeEnum: ZodNativeEnum,\n ZodPromise: ZodPromise,\n ZodEffects: ZodEffects,\n ZodTransformer: ZodEffects,\n ZodOptional: ZodOptional,\n ZodNullable: ZodNullable,\n ZodDefault: ZodDefault,\n ZodCatch: ZodCatch,\n ZodNaN: ZodNaN,\n BRAND: BRAND,\n ZodBranded: ZodBranded,\n ZodPipeline: ZodPipeline,\n ZodReadonly: ZodReadonly,\n custom: custom,\n Schema: ZodType,\n ZodSchema: ZodType,\n late: late,\n get ZodFirstPartyTypeKind () { return ZodFirstPartyTypeKind; },\n coerce: coerce,\n any: anyType,\n array: arrayType,\n bigint: bigIntType,\n boolean: booleanType,\n date: dateType,\n discriminatedUnion: discriminatedUnionType,\n effect: effectsType,\n 'enum': enumType,\n 'function': functionType,\n 'instanceof': instanceOfType,\n intersection: intersectionType,\n lazy: lazyType,\n literal: literalType,\n map: mapType,\n nan: nanType,\n nativeEnum: nativeEnumType,\n never: neverType,\n 'null': nullType,\n nullable: nullableType,\n number: numberType,\n object: objectType,\n oboolean: oboolean,\n onumber: onumber,\n optional: optionalType,\n ostring: ostring,\n pipeline: pipelineType,\n preprocess: preprocessType,\n promise: promiseType,\n record: recordType,\n set: setType,\n strictObject: strictObjectType,\n string: stringType,\n symbol: symbolType,\n transformer: effectsType,\n tuple: tupleType,\n 'undefined': undefinedType,\n union: unionType,\n unknown: unknownType,\n 'void': voidType,\n NEVER: NEVER,\n ZodIssueCode: ZodIssueCode,\n quotelessJson: quotelessJson,\n ZodError: ZodError\n});\n\nexport { BRAND, DIRTY, EMPTY_PATH, INVALID, NEVER, OK, ParseStatus, ZodType as Schema, ZodAny, ZodArray, ZodBigInt, ZodBoolean, ZodBranded, ZodCatch, ZodDate, ZodDefault, ZodDiscriminatedUnion, ZodEffects, ZodEnum, ZodError, ZodFirstPartyTypeKind, ZodFunction, ZodIntersection, ZodIssueCode, ZodLazy, ZodLiteral, ZodMap, ZodNaN, ZodNativeEnum, ZodNever, ZodNull, ZodNullable, ZodNumber, ZodObject, ZodOptional, ZodParsedType, ZodPipeline, ZodPromise, ZodReadonly, ZodRecord, ZodType as ZodSchema, ZodSet, ZodString, ZodSymbol, ZodEffects as ZodTransformer, ZodTuple, ZodType, ZodUndefined, ZodUnion, ZodUnknown, ZodVoid, addIssueToContext, anyType as any, arrayType as array, bigIntType as bigint, booleanType as boolean, coerce, custom, dateType as date, z as default, errorMap as defaultErrorMap, discriminatedUnionType as discriminatedUnion, effectsType as effect, enumType as enum, functionType as function, getErrorMap, getParsedType, instanceOfType as instanceof, intersectionType as intersection, isAborted, isAsync, isDirty, isValid, late, lazyType as lazy, literalType as literal, makeIssue, mapType as map, nanType as nan, nativeEnumType as nativeEnum, neverType as never, nullType as null, nullableType as nullable, numberType as number, objectType as object, objectUtil, oboolean, onumber, optionalType as optional, ostring, pipelineType as pipeline, preprocessType as preprocess, promiseType as promise, quotelessJson, recordType as record, setType as set, setErrorMap, strictObjectType as strictObject, stringType as string, symbolType as symbol, effectsType as transformer, tupleType as tuple, undefinedType as undefined, unionType as union, unknownType as unknown, util, voidType as void, z };\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\n/**\n * Checks if the given HTTP status code is either 401 (Unauthorized) or 403 (Forbidden).\n * @param httpStatus\n */\nexport function needsAuthentication(httpStatus: number) {\n return httpStatus === 401 || httpStatus === 403;\n}\n\nexport function createUrlEncodedParamsString(obj: Record<string, string>) {\n return Object.entries(obj)\n .map(([k, v]) => `${encodeURIComponent(k)}=${encodeURIComponent(v)}`)\n .join('&');\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\nimport {z} from 'zod';\nimport {type ClientCredentials} from '../model/ClientCredentials';\nimport {createUrlEncodedParamsString} from './HttpUtils';\n\nconst ClientCredentialsResponseSchema = z.object({\n access_token: z.string().min(1),\n token_type: z.string(),\n expires_in: z.number(),\n scope: z.string(),\n});\nexport type ClientCredentialsResponse = z.infer<\n typeof ClientCredentialsResponseSchema\n>;\n\nexport async function fetchClientCredentials(\n clientCredentials: ClientCredentials,\n): Promise<ClientCredentialsResponse> {\n const response = await fetch(clientCredentials.tokenUrl, {\n method: 'POST',\n body: createUrlEncodedParamsString({\n grant_type: 'client_credentials',\n client_id: clientCredentials.clientId,\n client_secret: clientCredentials.clientSecret,\n }),\n headers: {\n 'Content-Type': 'application/x-www-form-urlencoded',\n },\n });\n const json: unknown = await response.json();\n return parseTokenResponse(json);\n}\n\nfunction parseTokenResponse(json: unknown): ClientCredentialsResponse {\n const tokenResponseParsed = ClientCredentialsResponseSchema.safeParse(json);\n if (!tokenResponseParsed.success) {\n throw new Error('Bad access token response');\n }\n return tokenResponseParsed.data;\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\nimport {type ClientCredentials} from './model/ClientCredentials';\nimport {\n type ClientCredentialsResponse,\n fetchClientCredentials,\n} from './utils/FetchUtils';\n\nexport class AccessTokenService {\n private activeRequest: Promise<ClientCredentialsResponse> | null = null;\n private refreshTimeout?: number;\n private accessToken: string | null = null;\n\n constructor(private clientCredentials: ClientCredentials) {}\n\n async getAccessToken(): Promise<string> {\n if (!this.accessToken) {\n return await this.refreshAccessToken();\n }\n return this.accessToken;\n }\n\n /**\n * Synchronized refreshing of the access token\n */\n async refreshAccessToken(): Promise<string> {\n if (this.activeRequest) {\n await this.activeRequest;\n return this.accessToken!;\n }\n\n this.accessToken = null;\n this.activeRequest = fetchClientCredentials(this.clientCredentials);\n const response = await this.activeRequest;\n this.scheduleNextRefresh(response);\n this.accessToken = response.access_token;\n this.activeRequest = null;\n\n return this.accessToken;\n }\n\n private scheduleNextRefresh(response: ClientCredentialsResponse) {\n clearTimeout(this.refreshTimeout);\n const ms = (response.expires_in - 2) * 1000;\n // eslint-disable-next-line @typescript-eslint/no-unsafe-assignment\n this.refreshTimeout = setTimeout(() => {\n this.accessToken = null;\n }, ms) as any;\n }\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\nexport function injectAccessTokenHeader(init: RequestInit, token: string) {\n init.headers = withHeader('Authorization', `Bearer ${token}`, init.headers);\n}\n\nfunction withHeader(\n headerName: string,\n headerValue: string,\n headers?: HeadersInit,\n): HeadersInit {\n if (!headers) {\n headers = {};\n headers[headerName] = headerValue;\n return headers;\n }\n\n if (Array.isArray(headers)) {\n return headers.map(([a, b]): [string, string] =>\n a !== headerName ? [a, b] : [headerName, headerValue],\n );\n }\n\n if (isHeaders(headers)) {\n if (headers.has(headerName)) {\n headers.set(headerName, headerValue);\n } else {\n headers.append(headerName, headerValue);\n }\n return headers;\n }\n\n headers[headerName] = headerValue;\n return headers;\n}\n\nfunction isHeaders(object: any): object is Headers {\n return (\n 'append' in object &&\n 'delete' in object &&\n 'get' in object &&\n 'has' in object &&\n 'set' in object &&\n 'forEach' in object\n );\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\nimport {\n type Middleware,\n type RequestContext,\n type ResponseContext,\n} from '../generated';\nimport {AccessTokenService} from './AccessTokenService';\nimport {type ClientCredentials} from './model/ClientCredentials';\nimport {needsAuthentication} from './utils/HttpUtils';\nimport {injectAccessTokenHeader} from './utils/RequestUtils';\n\nexport function buildOAuthMiddleware(\n clientCredentials: ClientCredentials,\n): Middleware {\n const accessTokenService = new AccessTokenService(clientCredentials);\n\n return {\n pre: async (ctx: RequestContext) => {\n const accessToken = await accessTokenService.getAccessToken();\n injectAccessTokenHeader(ctx.init, accessToken);\n\n return Promise.resolve({\n url: ctx.url,\n init: ctx.init,\n });\n },\n post: async (ctx: ResponseContext): Promise<Response> => {\n if (needsAuthentication(ctx.response.status)) {\n const accessToken =\n await accessTokenService.refreshAccessToken();\n injectAccessTokenHeader(ctx.init, accessToken);\n // Use normal fetch to not trigger middleware on retry\n return await fetch(ctx.url, ctx.init);\n }\n\n return Promise.resolve(ctx.response);\n },\n };\n}\n","/*\n * Copyright 2025 sovity GmbH\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * https://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n *\n * SPDX-License-Identifier: Apache-2.0\n *\n * Contributors:\n * sovity - init and continued development\n */\nimport {\n Configuration,\n type ConfigurationParameters,\n EnterpriseEditionApi,\n type Middleware,\n UIApi,\n UseCaseApi,\n} from './generated';\nimport {buildOAuthMiddleware} from './oauth2/Middleware';\nimport {type ClientCredentials} from './oauth2/model/ClientCredentials';\n\n/**\n * API Client for our sovity EDC\n */\nexport interface EdcClient {\n uiApi: UIApi;\n useCaseApi: UseCaseApi;\n enterpriseEditionApi: EnterpriseEditionApi;\n}\n\n/**\n * Configure & Build new EDC Client\n * @param opts opts\n */\nexport function buildEdcClient(opts: EdcClientOptions): EdcClient {\n const middleware: Middleware[] = [];\n let headers: Record<string, string> = {};\n\n if (opts.clientCredentials) {\n middleware.push(buildOAuthMiddleware(opts.clientCredentials));\n }\n if (opts.managementApiKey) {\n headers = buildApiKeyHeader(opts.managementApiKey);\n }\n\n const config = new Configuration({\n basePath: opts.managementApiUrl,\n headers,\n credentials: 'same-origin',\n middleware,\n ...opts.configOverrides,\n });\n\n return {\n uiApi: new UIApi(config),\n useCaseApi: new UseCaseApi(config),\n enterpriseEditionApi: new EnterpriseEditionApi(config),\n };\n}\n\nfunction buildApiKeyHeader(key: string) {\n return {\n 'X-Api-Key': key,\n };\n}\n\n/**\n * Options for instantiating an EDC API Client\n */\nexport interface EdcClientOptions {\n managementApiUrl: string;\n managementApiKey?: string;\n clientCredentials?: ClientCredentials;\n configOverrides?: Partial<ConfigurationParameters>;\n}\n"],"names":["BASE_PATH","Configuration","configuration","querystring","apiKey","accessToken","DefaultConfig","_BaseAPI","__publicField","url","init","fetchParams","middleware","response","e","FetchError","middlewares","next","preMiddlewares","pre","postMiddlewares","post","mime","context","initOverrides","ResponseError","headers","key","initOverrideFn","initParams","overriddenInit","body","isFormData","isBlob","constructor","BaseAPI","value","msg","cause","RequiredError","field","COLLECTION_FORMATS","params","prefix","querystringSingleKey","part","keyPrefix","fullKey","multiValue","singleValue","valueAsArray","exists","json","mapValues","data","fn","acc","canConsumeForm","consumes","consume","JSONApiResponse","raw","transformer","jsonValue","VoidApiResponse","BlobApiResponse","TextApiResponse","AssetFilterConstraintOperator","instanceOfAssetFilterConstraintOperator","AssetFilterConstraintOperatorFromJSON","AssetFilterConstraintOperatorFromJSONTyped","ignoreDiscriminator","AssetFilterConstraintOperatorToJSON","AssetFilterConstraintOperatorToJSONTyped","instanceOfAssetFilterConstraint","AssetFilterConstraintFromJSON","AssetFilterConstraintFromJSONTyped","AssetFilterConstraintToJSON","AssetFilterConstraintToJSONTyped","DataSourceAvailability","instanceOfDataSourceAvailability","DataSourceAvailabilityFromJSON","DataSourceAvailabilityFromJSONTyped","DataSourceAvailabilityToJSON","DataSourceAvailabilityToJSONTyped","instanceOfAssetsPageEntry","AssetsPageEntryFromJSON","AssetsPageEntryFromJSONTyped","AssetsPageEntryToJSON","AssetsPageEntryToJSONTyped","instanceOfPaginationRequest","PaginationRequestFromJSON","PaginationRequestFromJSONTyped","PaginationRequestToJSON","PaginationRequestToJSONTyped","AssetsPageSortProperty","instanceOfAssetsPageSortProperty","AssetsPageSortPropertyFromJSON","AssetsPageSortPropertyFromJSONTyped","AssetsPageSortPropertyToJSON","AssetsPageSortPropertyToJSONTyped","SortByDirection","instanceOfSortByDirection","SortByDirectionFromJSON","SortByDirectionFromJSONTyped","SortByDirectionToJSON","SortByDirectionToJSONTyped","instanceOfSortByRequestAssetsPageSortProperty","SortByRequestAssetsPageSortPropertyFromJSON","SortByRequestAssetsPageSortPropertyFromJSONTyped","SortByRequestAssetsPageSortPropertyToJSON","SortByRequestAssetsPageSortPropertyToJSONTyped","instanceOfAssetsPageRequest","AssetsPageRequestFromJSON","AssetsPageRequestFromJSONTyped","AssetsPageRequestToJSON","AssetsPageRequestToJSONTyped","instanceOfPaginationResult","PaginationResultFromJSON","PaginationResultFromJSONTyped","PaginationResultToJSON","PaginationResultToJSONTyped","instanceOfAssetsPageResult","AssetsPageResultFromJSON","AssetsPageResultFromJSONTyped","AssetsPageResultToJSON","AssetsPageResultToJSONTyped","instanceOfBuildInfo","BuildInfoFromJSON","BuildInfoFromJSONTyped","BuildInfoToJSON","BuildInfoToJSONTyped","instanceOfBusinessPartnerGroupCreateSubmit","BusinessPartnerGroupCreateSubmitFromJSON","BusinessPartnerGroupCreateSubmitFromJSONTyped","BusinessPartnerGroupCreateSubmitToJSON","BusinessPartnerGroupCreateSubmitToJSONTyped","instanceOfBusinessPartnerGroupEditPage","BusinessPartnerGroupEditPageFromJSON","BusinessPartnerGroupEditPageFromJSONTyped","BusinessPartnerGroupEditPageToJSON","BusinessPartnerGroupEditPageToJSONTyped","instanceOfBusinessPartnerGroupEditSubmit","BusinessPartnerGroupEditSubmitFromJSON","BusinessPartnerGroupEditSubmitFromJSONTyped","BusinessPartnerGroupEditSubmitToJSON","BusinessPartnerGroupEditSubmitToJSONTyped","instanceOfBusinessPartnerGroupListPageEntry","BusinessPartnerGroupListPageEntryFromJSON","BusinessPartnerGroupListPageEntryFromJSONTyped","BusinessPartnerGroupListPageEntryToJSON","BusinessPartnerGroupListPageEntryToJSONTyped","instanceOfBusinessPartnerGroupQuery","BusinessPartnerGroupQueryFromJSON","BusinessPartnerGroupQueryFromJSONTyped","BusinessPartnerGroupQueryToJSON","BusinessPartnerGroupQueryToJSONTyped","CallbackAddressEventType","instanceOfCallbackAddressEventType","CallbackAddressEventTypeFromJSON","CallbackAddressEventTypeFromJSONTyped","CallbackAddressEventTypeToJSON","CallbackAddressEventTypeToJSONTyped","instanceOfCallbackAddressDto","CallbackAddressDtoFromJSON","CallbackAddressDtoFromJSONTyped","CallbackAddressDtoToJSON","CallbackAddressDtoToJSONTyped","CatalogFilterExpressionLiteralType","instanceOfCatalogFilterExpressionLiteralType","CatalogFilterExpressionLiteralTypeFromJSON","CatalogFilterExpressionLiteralTypeFromJSONTyped","CatalogFilterExpressionLiteralTypeToJSON","CatalogFilterExpressionLiteralTypeToJSONTyped","instanceOfCatalogFilterExpressionLiteral","CatalogFilterExpressionLiteralFromJSON","CatalogFilterExpressionLiteralFromJSONTyped","CatalogFilterExpressionLiteralToJSON","CatalogFilterExpressionLiteralToJSONTyped","CatalogFilterExpressionOperator","instanceOfCatalogFilterExpressionOperator","CatalogFilterExpressionOperatorFromJSON","CatalogFilterExpressionOperatorFromJSONTyped","CatalogFilterExpressionOperatorToJSON","CatalogFilterExpressionOperatorToJSONTyped","instanceOfCatalogFilterExpression","CatalogFilterExpressionFromJSON","CatalogFilterExpressionFromJSONTyped","CatalogFilterExpressionToJSON","CatalogFilterExpressionToJSONTyped","instanceOfCatalogQuery","CatalogQueryFromJSON","CatalogQueryFromJSONTyped","CatalogQueryToJSON","CatalogQueryToJSONTyped","CatalogSortByDirection","instanceOfCatalogSortByDirection","CatalogSortByDirectionFromJSON","CatalogSortByDirectionFromJSONTyped","CatalogSortByDirectionToJSON","CatalogSortByDirectionToJSONTyped","instanceOfCatalogSortBy","CatalogSortByFromJSON","CatalogSortByFromJSONTyped","CatalogSortByToJSON","CatalogSortByToJSONTyped","instanceOfCatalogQueryV2","CatalogQueryV2FromJSON","CatalogQueryV2FromJSONTyped","CatalogQueryV2ToJSON","CatalogQueryV2ToJSONTyped","instanceOfConnectorLimits","ConnectorLimitsFromJSON","ConnectorLimitsFromJSONTyped","ConnectorLimitsToJSON","ConnectorLimitsToJSONTyped","ContractAgreementDirection","instanceOfContractAgreementDirection","ContractAgreementDirectionFromJSON","ContractAgreementDirectionFromJSONTyped","ContractAgreementDirectionToJSON","ContractAgreementDirectionToJSONTyped","ContractTerminatedBy","instanceOfContractTerminatedBy","ContractTerminatedByFromJSON","ContractTerminatedByFromJSONTyped","ContractTerminatedByToJSON","ContractTerminatedByToJSONTyped","instanceOfContractAgreementTerminationInfo","ContractAgreementTerminationInfoFromJSON","ContractAgreementTerminationInfoFromJSONTyped","ContractAgreementTerminationInfoToJSON","ContractAgreementTerminationInfoToJSONTyped","TransferProcessSimplifiedState","instanceOfTransferProcessSimplifiedState","TransferProcessSimplifiedStateFromJSON","TransferProcessSimplifiedStateFromJSONTyped","TransferProcessSimplifiedStateToJSON","TransferProcessSimplifiedStateToJSONTyped","instanceOfTransferProcessState","TransferProcessStateFromJSON","TransferProcessStateFromJSONTyped","TransferProcessStateToJSON","TransferProcessStateToJSONTyped","instanceOfContractAgreementTransferProcess","ContractAgreementTransferProcessFromJSON","ContractAgreementTransferProcessFromJSONTyped","ContractAgreementTransferProcessToJSON","ContractAgreementTransferProcessToJSONTyped","UiCriterionLiteralType","instanceOfUiCriterionLiteralType","UiCriterionLiteralTypeFromJSON","UiCriterionLiteralTypeFromJSONTyped","UiCriterionLiteralTypeToJSON","UiCriterionLiteralTypeToJSONTyped","instanceOfUiCriterionLiteral","UiCriterionLiteralFromJSON","UiCriterionLiteralFromJSONTyped","UiCriterionLiteralToJSON","UiCriterionLiteralToJSONTyped","UiCriterionOperator","instanceOfUiCriterionOperator","UiCriterionOperatorFromJSON","UiCriterionOperatorFromJSONTyped","UiCriterionOperatorToJSON","UiCriterionOperatorToJSONTyped","instanceOfUiCriterion","UiCriterionFromJSON","UiCriterionFromJSONTyped","UiCriterionToJSON","UiCriterionToJSONTyped","instanceOfContractDefinitionEntry","ContractDefinitionEntryFromJSON","ContractDefinitionEntryFromJSONTyped","ContractDefinitionEntryToJSON","ContractDefinitionEntryToJSONTyped","instanceOfContractDefinitionPage","ContractDefinitionPageFromJSON","ContractDefinitionPageFromJSONTyped","ContractDefinitionPageToJSON","ContractDefinitionPageToJSONTyped","instanceOfContractDefinitionRequest","ContractDefinitionRequestFromJSON","ContractDefinitionRequestFromJSONTyped","ContractDefinitionRequestToJSON","ContractDefinitionRequestToJSONTyped","ContractTerminationStatus","instanceOfContractTerminationStatus","ContractTerminationStatusFromJSON","ContractTerminationStatusFromJSONTyped","ContractTerminationStatusToJSON","ContractTerminationStatusToJSONTyped","instanceOfUiAssetExtForSphinx","UiAssetExtForSphinxFromJSON","UiAssetExtForSphinxFromJSONTyped","UiAssetExtForSphinxToJSON","UiAssetExtForSphinxToJSONTyped","instanceOfUiAsset","UiAssetFromJSON","UiAssetFromJSONTyped","UiAssetToJSON","UiAssetToJSONTyped","OperatorDto","instanceOfOperatorDto","OperatorDtoFromJSON","OperatorDtoFromJSONTyped","OperatorDtoToJSON","OperatorDtoToJSONTyped","UiPolicyLiteralType","instanceOfUiPolicyLiteralType","UiPolicyLiteralTypeFromJSON","UiPolicyLiteralTypeFromJSONTyped","UiPolicyLiteralTypeToJSON","UiPolicyLiteralTypeToJSONTyped","instanceOfUiPolicyLiteral","UiPolicyLiteralFromJSON","UiPolicyLiteralFromJSONTyped","UiPolicyLiteralToJSON","UiPolicyLiteralToJSONTyped","instanceOfUiPolicyConstraint","UiPolicyConstraintFromJSON","UiPolicyConstraintFromJSONTyped","UiPolicyConstraintToJSON","UiPolicyConstraintToJSONTyped","UiPolicyExpressionType","instanceOfUiPolicyExpressionType","UiPolicyExpressionTypeFromJSON","UiPolicyExpressionTypeFromJSONTyped","UiPolicyExpressionTypeToJSON","UiPolicyExpressionTypeToJSONTyped","instanceOfUiPolicyExpression","UiPolicyExpressionFromJSON","UiPolicyExpressionFromJSONTyped","UiPolicyExpressionToJSON","UiPolicyExpressionToJSONTyped","instanceOfUiPolicy","UiPolicyFromJSON","UiPolicyFromJSONTyped","UiPolicyToJSON","UiPolicyToJSONTyped","instanceOfContractDetailPageResult","ContractDetailPageResultFromJSON","ContractDetailPageResultFromJSONTyped","ContractDetailPageResultToJSON","ContractDetailPageResultToJSONTyped","instanceOfContractNegotiationRequest","ContractNegotiationRequestFromJSON","ContractNegotiationRequestFromJSONTyped","ContractNegotiationRequestToJSON","ContractNegotiationRequestToJSONTyped","ContractNegotiationSimplifiedState","instanceOfContractNegotiationSimplifiedState","ContractNegotiationSimplifiedStateFromJSON","ContractNegotiationSimplifiedStateFromJSONTyped","ContractNegotiationSimplifiedStateToJSON","ContractNegotiationSimplifiedStateToJSONTyped","instanceOfContractNegotiationState","ContractNegotiationStateFromJSON","ContractNegotiationStateFromJSONTyped","ContractNegotiationStateToJSON","ContractNegotiationStateToJSONTyped","instanceOfContractNegotiationStateResult","ContractNegotiationStateResultFromJSON","ContractNegotiationStateResultFromJSONTyped","ContractNegotiationStateResultToJSON","ContractNegotiationStateResultToJSONTyped","instanceOfContractTerminationRequest","ContractTerminationRequestFromJSON","ContractTerminationRequestFromJSONTyped","ContractTerminationRequestToJSON","ContractTerminationRequestToJSONTyped","instanceOfContractsPageEntry","ContractsPageEntryFromJSON","ContractsPageEntryFromJSONTyped","ContractsPageEntryToJSON","ContractsPageEntryToJSONTyped","ContractsPageSortProperty","instanceOfContractsPageSortProperty","ContractsPageSortPropertyFromJSON","ContractsPageSortPropertyFromJSONTyped","ContractsPageSortPropertyToJSON","ContractsPageSortPropertyToJSONTyped","instanceOfSortByRequestContractsPageSortProperty","SortByRequestContractsPageSortPropertyFromJSON","SortByRequestContractsPageSortPropertyFromJSONTyped","SortByRequestContractsPageSortPropertyToJSON","SortByRequestContractsPageSortPropertyToJSONTyped","instanceOfContractsPageRequest","ContractsPageRequestFromJSON","ContractsPageRequestFromJSONTyped","ContractsPageRequestToJSON","ContractsPageRequestToJSONTyped","instanceOfContractsPageResult","ContractsPageResultFromJSON","ContractsPageResultFromJSONTyped","ContractsPageResultToJSON","ContractsPageResultToJSONTyped","instanceOfDashboardCxDidConfig","DashboardCxDidConfigFromJSON","DashboardCxDidConfigFromJSONTyped","DashboardCxDidConfigToJSON","DashboardCxDidConfigToJSONTyped","instanceOfDashboardDapsConfig","DashboardDapsConfigFromJSON","DashboardDapsConfigFromJSONTyped","DashboardDapsConfigToJSON","DashboardDapsConfigToJSONTyped","instanceOfDashboardTransferAmounts","DashboardTransferAmountsFromJSON","DashboardTransferAmountsFromJSONTyped","DashboardTransferAmountsToJSON","DashboardTransferAmountsToJSONTyped","instanceOfDashboardPage","DashboardPageFromJSON","DashboardPageFromJSONTyped","DashboardPageToJSON","DashboardPageToJSONTyped","DataOfferPublishType","instanceOfDataOfferPublishType","DataOfferPublishTypeFromJSON","DataOfferPublishTypeFromJSONTyped","DataOfferPublishTypeToJSON","DataOfferPublishTypeToJSONTyped","DataSourceType","instanceOfDataSourceType","DataSourceTypeFromJSON","DataSourceTypeFromJSONTyped","DataSourceTypeToJSON","DataSourceTypeToJSONTyped","UiDataSourceHttpDataMethod","instanceOfUiDataSourceHttpDataMethod","UiDataSourceHttpDataMethodFromJSON","UiDataSourceHttpDataMethodFromJSONTyped","UiDataSourceHttpDataMethodToJSON","UiDataSourceHttpDataMethodToJSONTyped","instanceOfUiHttpAuthApiKey","UiHttpAuthApiKeyFromJSON","UiHttpAuthApiKeyFromJSONTyped","UiHttpAuthApiKeyToJSON","UiHttpAuthApiKeyToJSONTyped","instanceOfUiHttpAuthBasic","UiHttpAuthBasicFromJSON","UiHttpAuthBasicFromJSONTyped","UiHttpAuthBasicToJSON","UiHttpAuthBasicToJSONTyped","UiHttpOauth2AuthType","instanceOfUiHttpOauth2AuthType","UiHttpOauth2AuthTypeFromJSON","UiHttpOauth2AuthTypeFromJSONTyped","UiHttpOauth2AuthTypeToJSON","UiHttpOauth2AuthTypeToJSONTyped","instanceOfUiHttpOauth2PrivateKeyAuthorization","UiHttpOauth2PrivateKeyAuthorizationFromJSON","UiHttpOauth2PrivateKeyAuthorizationFromJSONTyped","UiHttpOauth2PrivateKeyAuthorizationToJSON","UiHttpOauth2PrivateKeyAuthorizationToJSONTyped","instanceOfUiHttpOauth2SharedSecretAuthorization","UiHttpOauth2SharedSecretAuthorizationFromJSON","UiHttpOauth2SharedSecretAuthorizationFromJSONTyped","UiHttpOauth2SharedSecretAuthorizationToJSON","UiHttpOauth2SharedSecretAuthorizationToJSONTyped","instanceOfUiHttpAuthOauth2","UiHttpAuthOauth2FromJSON","UiHttpAuthOauth2FromJSONTyped","UiHttpAuthOauth2ToJSON","UiHttpAuthOauth2ToJSONTyped","UiHttpAuthType","instanceOfUiHttpAuthType","UiHttpAuthTypeFromJSON","UiHttpAuthTypeFromJSONTyped","UiHttpAuthTypeToJSON","UiHttpAuthTypeToJSONTyped","instanceOfUiHttpAuth","UiHttpAuthFromJSON","UiHttpAuthFromJSONTyped","UiHttpAuthToJSON","UiHttpAuthToJSONTyped","instanceOfUiDataSourceHttpData","UiDataSourceHttpDataFromJSON","UiDataSourceHttpDataFromJSONTyped","UiDataSourceHttpDataToJSON","UiDataSourceHttpDataToJSONTyped","instanceOfUiDataSourceOnRequest","UiDataSourceOnRequestFromJSON","UiDataSourceOnRequestFromJSONTyped","UiDataSourceOnRequestToJSON","UiDataSourceOnRequestToJSONTyped","instanceOfUiDataSource","UiDataSourceFromJSON","UiDataSourceFromJSONTyped","UiDataSourceToJSON","UiDataSourceToJSONTyped","instanceOfUiAssetCreateRequest","UiAssetCreateRequestFromJSON","UiAssetCreateRequestFromJSONTyped","UiAssetCreateRequestToJSON","UiAssetCreateRequestToJSONTyped","instanceOfDataOfferCreateRequest","DataOfferCreateRequestFromJSON","DataOfferCreateRequestFromJSONTyped","DataOfferCreateRequestToJSON","DataOfferCreateRequestToJSONTyped","instanceOfEdrDto","EdrDtoFromJSON","EdrDtoFromJSONTyped","EdrDtoToJSON","EdrDtoToJSONTyped","instanceOfIdAvailabilityResponse","IdAvailabilityResponseFromJSON","IdAvailabilityResponseFromJSONTyped","IdAvailabilityResponseToJSON","IdAvailabilityResponseToJSONTyped","instanceOfIdResponseDto","IdResponseDtoFromJSON","IdResponseDtoFromJSONTyped","IdResponseDtoToJSON","IdResponseDtoToJSONTyped","instanceOfInitiateCustomTransferRequest","InitiateCustomTransferRequestFromJSON","InitiateCustomTransferRequestFromJSONTyped","InitiateCustomTransferRequestToJSON","InitiateCustomTransferRequestToJSONTyped","instanceOfInitiateTransferRequest","InitiateTransferRequestFromJSON","InitiateTransferRequestFromJSONTyped","InitiateTransferRequestToJSON","InitiateTransferRequestToJSONTyped","instanceOfTransferProcessStatesDto","TransferProcessStatesDtoFromJSON","TransferProcessStatesDtoFromJSONTyped","TransferProcessStatesDtoToJSON","TransferProcessStatesDtoToJSONTyped","instanceOfKpiResult","KpiResultFromJSON","KpiResultFromJSONTyped","KpiResultToJSON","KpiResultToJSONTyped","instanceOfNegotiateAllQuery","NegotiateAllQueryFromJSON","NegotiateAllQueryFromJSONTyped","NegotiateAllQueryToJSON","NegotiateAllQueryToJSONTyped","instanceOfNegotiateAllResult","NegotiateAllResultFromJSON","NegotiateAllResultFromJSONTyped","NegotiateAllResultToJSON","NegotiateAllResultToJSONTyped","instanceOfPolicyDefinitionCreateDto","PolicyDefinitionCreateDtoFromJSON","PolicyDefinitionCreateDtoFromJSONTyped","PolicyDefinitionCreateDtoToJSON","PolicyDefinitionCreateDtoToJSONTyped","instanceOfUiPolicyCreateRequest","UiPolicyCreateRequestFromJSON","UiPolicyCreateRequestFromJSONTyped","UiPolicyCreateRequestToJSON","UiPolicyCreateRequestToJSONTyped","instanceOfPolicyDefinitionCreateRequest","PolicyDefinitionCreateRequestFromJSON","PolicyDefinitionCreateRequestFromJSONTyped","PolicyDefinitionCreateRequestToJSON","PolicyDefinitionCreateRequestToJSONTyped","instanceOfPolicyDefinitionDto","PolicyDefinitionDtoFromJSON","PolicyDefinitionDtoFromJSONTyped","PolicyDefinitionDtoToJSON","PolicyDefinitionDtoToJSONTyped","instanceOfPolicyDefinitionPage","PolicyDefinitionPageFromJSON","PolicyDefinitionPageFromJSONTyped","PolicyDefinitionPageToJSON","PolicyDefinitionPageToJSONTyped","instanceOfTransferHistoryEntry","TransferHistoryEntryFromJSON","TransferHistoryEntryFromJSONTyped","TransferHistoryEntryToJSON","TransferHistoryEntryToJSONTyped","instanceOfTransferHistoryPage","TransferHistoryPageFromJSON","TransferHistoryPageFromJSONTyped","TransferHistoryPageToJSON","TransferHistoryPageToJSONTyped","instanceOfTransferProcessStateResult","TransferProcessStateResultFromJSON","TransferProcessStateResultFromJSONTyped","TransferProcessStateResultToJSON","TransferProcessStateResultToJSONTyped","instanceOfUiAssetEditRequest","UiAssetEditRequestFromJSON","UiAssetEditRequestFromJSONTyped","UiAssetEditRequestToJSON","UiAssetEditRequestToJSONTyped","UiConfigFeature","instanceOfUiConfigFeature","UiConfigFeatureFromJSON","UiConfigFeatureFromJSONTyped","UiConfigFeatureToJSON","UiConfigFeatureToJSONTyped","instanceOfUiConfigPreconfiguredCounterparty","UiConfigPreconfiguredCounterpartyFromJSON","UiConfigPreconfiguredCounterpartyFromJSONTyped","UiConfigPreconfiguredCounterpartyToJSON","UiConfigPreconfiguredCounterpartyToJSONTyped","instanceOfUiConfig","UiConfigFromJSON","UiConfigFromJSONTyped","UiConfigToJSON","UiConfigToJSONTyped","instanceOfUiContractNegotiation","UiContractNegotiationFromJSON","UiContractNegotiationFromJSONTyped","UiContractNegotiationToJSON","UiContractNegotiationToJSONTyped","instanceOfUiContractOffer","UiContractOfferFromJSON","UiContractOfferFromJSONTyped","UiContractOfferToJSON","UiContractOfferToJSONTyped","instanceOfUiDataOffer","UiDataOfferFromJSON","UiDataOfferFromJSONTyped","UiDataOfferToJSON","UiDataOfferToJSONTyped","UiDataSinkHttpDataPushMethod","instanceOfUiDataSinkHttpDataPushMethod","UiDataSinkHttpDataPushMethodFromJSON","UiDataSinkHttpDataPushMethodFromJSONTyped","UiDataSinkHttpDataPushMethodToJSON","UiDataSinkHttpDataPushMethodToJSONTyped","UiHttpPushAuthType","instanceOfUiHttpPushAuthType","UiHttpPushAuthTypeFromJSON","UiHttpPushAuthTypeFromJSONTyped","UiHttpPushAuthTypeToJSON","UiHttpPushAuthTypeToJSONTyped","instanceOfUiHttpPushAuth","UiHttpPushAuthFromJSON","UiHttpPushAuthFromJSONTyped","UiHttpPushAuthToJSON","UiHttpPushAuthToJSONTyped","instanceOfUiDataSinkHttpDataPush","UiDataSinkHttpDataPushFromJSON","UiDataSinkHttpDataPushFromJSONTyped","UiDataSinkHttpDataPushToJSON","UiDataSinkHttpDataPushToJSONTyped","UiInitiateTransferType","instanceOfUiInitiateTransferType","UiInitiateTransferTypeFromJSON","UiInitiateTransferTypeFromJSONTyped","UiInitiateTransferTypeToJSON","UiInitiateTransferTypeToJSONTyped","instanceOfUiInitiateTransferRequest","UiInitiateTransferRequestFromJSON","UiInitiateTransferRequestFromJSONTyped","UiInitiateTransferRequestToJSON","UiInitiateTransferRequestToJSONTyped","instanceOfVaultSecretCreateSubmit","VaultSecretCreateSubmitFromJSON","VaultSecretCreateSubmitFromJSONTyped","VaultSecretCreateSubmitToJSON","VaultSecretCreateSubmitToJSONTyped","instanceOfVaultSecretEditPage","VaultSecretEditPageFromJSON","VaultSecretEditPageFromJSONTyped","VaultSecretEditPageToJSON","VaultSecretEditPageToJSONTyped","instanceOfVaultSecretEditSubmit","VaultSecretEditSubmitFromJSON","VaultSecretEditSubmitFromJSONTyped","VaultSecretEditSubmitToJSON","VaultSecretEditSubmitToJSONTyped","instanceOfVaultSecretListPageEntry","VaultSecretListPageEntryFromJSON","VaultSecretListPageEntryFromJSONTyped","VaultSecretListPageEntryToJSON","VaultSecretListPageEntryToJSONTyped","instanceOfVaultSecretQuery","VaultSecretQueryFromJSON","VaultSecretQueryFromJSONTyped","VaultSecretQueryToJSON","VaultSecretQueryToJSONTyped","EnterpriseEditionApi","runtime.BaseAPI","queryParameters","headerParameters","runtime.JSONApiResponse","requestParameters","runtime.RequiredError","runtime.VoidApiResponse","runtime.TextApiResponse","UIApi","UseCaseApi","util","val","assertIs","_arg","assertNever","_x","items","obj","item","validKeys","k","filtered","object","keys","arr","checker","joinValues","array","separator","_","objectUtil","first","second","ZodParsedType","getParsedType","ZodIssueCode","quotelessJson","ZodError","issues","sub","subs","actualProto","_mapper","mapper","issue","fieldErrors","processError","error","curr","i","el","formErrors","errorMap","_ctx","message","overrideErrorMap","setErrorMap","map","getErrorMap","makeIssue","path","errorMaps","issueData","fullPath","fullIssue","errorMessage","maps","m","EMPTY_PATH","addIssueToContext","ctx","x","ParseStatus","status","results","arrayValue","s","INVALID","pairs","syncPairs","pair","finalObject","DIRTY","OK","isAborted","isDirty","isValid","isAsync","errorUtil","ParseInputLazyPath","parent","handleResult","result","processCreateParams","invalid_type_error","required_error","description","iss","ZodType","def","input","_a","maybeAsyncResult","check","getIssueProperties","setError","refinementData","refinement","ZodEffects","ZodFirstPartyTypeKind","ZodOptional","ZodNullable","ZodArray","ZodPromise","option","ZodUnion","incoming","ZodIntersection","transform","defaultValueFunc","ZodDefault","ZodBranded","catchValueFunc","ZodCatch","This","target","ZodPipeline","ZodReadonly","cuidRegex","cuid2Regex","ulidRegex","uuidRegex","emailRegex","_emojiRegex","emojiRegex","ipv4Regex","ipv6Regex","datetimeRegex","args","isValidIP","ip","version","ZodString","tooBig","tooSmall","regex","validation","options","minLength","maxLength","len","ch","min","max","floatSafeRemainder","step","valDecCount","stepDecCount","decCount","valInt","stepInt","ZodNumber","kind","inclusive","ZodBigInt","ZodBoolean","ZodDate","minDate","maxDate","ZodSymbol","ZodUndefined","ZodNull","ZodAny","ZodUnknown","ZodNever","ZodVoid","schema","deepPartialify","ZodObject","newShape","fieldSchema","ZodTuple","shape","shapeKeys","extraKeys","keyValidator","unknownKeys","catchall","_b","_c","_d","defaultError","augmentation","merging","index","mask","newField","createZodEnum","handleResults","unionErrors","childCtx","dirty","types","getDiscriminator","type","ZodLazy","ZodLiteral","ZodEnum","ZodNativeEnum","ZodDiscriminatedUnion","discriminator","discriminatorValue","optionsMap","discriminatorValues","mergeValues","a","b","aType","bType","bKeys","sharedKeys","newObj","sharedValue","newArray","itemA","itemB","handleParsed","parsedLeft","parsedRight","merged","left","right","itemIndex","rest","schemas","ZodRecord","keyType","valueType","third","ZodMap","finalMap","ZodSet","finalizeSet","elements","parsedSet","element","minSize","maxSize","size","ZodFunction","makeArgsIssue","makeReturnsIssue","returns","me","parsedArgs","parsedReturns","returnType","func","getter","values","expectedValues","enumValues","opt","nativeEnumValues","promisified","effect","checkCtx","arg","processed","executeRefinement","inner","base","preprocess","newCtx","ZodNaN","BRAND","inResult","custom","fatal","p","_fatal","p2","late","instanceOfType","cls","stringType","numberType","nanType","bigIntType","booleanType","dateType","symbolType","undefinedType","nullType","anyType","unknownType","neverType","voidType","arrayType","objectType","strictObjectType","unionType","discriminatedUnionType","intersectionType","tupleType","recordType","mapType","setType","functionType","lazyType","literalType","enumType","nativeEnumType","promiseType","effectsType","optionalType","nullableType","preprocessType","pipelineType","z","needsAuthentication","httpStatus","createUrlEncodedParamsString","v","ClientCredentialsResponseSchema","fetchClientCredentials","clientCredentials","parseTokenResponse","tokenResponseParsed","AccessTokenService","ms","injectAccessTokenHeader","token","withHeader","headerName","headerValue","isHeaders","buildOAuthMiddleware","accessTokenService","buildEdcClient","opts","buildApiKeyHeader","config"],"mappings":"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","x_google_ignoreList":[121]}