/**
 * Copyright (c) 2020-present, Goldman Sachs
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
import { type PlainObject } from '@finos/legend-shared';
import { V1_AccessPointGroupReference, V1_ContractUserEventDataProducerPayload, V1_ContractUserEventPrivilegeManagerPayload, V1_ContractUserEventRecord, V1_CreateContractPayload, V1_DataContract, V1_DataContractSubscriptions, V1_DataContractsResponse, V1_PendingTasksResponse, V1_TaskMetadata, V1_TaskResponse, V1_TaskStatusChangeResponse, V1_ContractUserStatusResponse, V1_LiteDataContractsResponse, V1_LiteDataContract, V1_DataContractApprovedUsersResponse, V1_TerminalOrderItem, V1_TerminalProvisionPayload, V1_LiteDataContractWithUserStatus } from '../../../lakehouse/entitlements/V1_ConsumerEntitlements.js';
import { V1_AdhocTeam, V1_AppDirNode, V1_ProducerScope, V1_User } from '../../../lakehouse/entitlements/V1_CoreEntitlements.js';
import type { PureProtocolProcessorPlugin } from '../../../../PureProtocolProcessorPlugin.js';
import { V1_AccessPointGroupStereotypeMapping, V1_AdHocDeploymentDataProductOrigin, V1_EntitlementsAccessPoint, V1_EntitlementsDataProduct, V1_EntitlementsDataProductDetails, V1_EntitlementsDataProductDetailsResponse, V1_EntitlementsDataProductLite, V1_EntitlementsDataProductLiteResponse, V1_EntitlementsLakehouseEnvironment, V1_SdlcDeploymentDataProductOrigin } from '../../../lakehouse/entitlements/V1_EntitlementsDataProduct.js';
import { V1_PendingTaskWithAssignees } from '../../../lakehouse/entitlements/V1_EntitlementsTasks.js';
export declare enum V1_OrganizationalScopeType {
    AdHocTeam = "AdHocTeam",
    Producer = "Producer"
}
export declare enum V1_DataProductOriginType {
    AD_HOC_DEPLOYMENT = "AdHocDeployment",
    SDLC_DEPLOYMENT = "SdlcDeployment"
}
export declare enum V1_AccessPointGroupReferenceType {
    AccessPointGroupReference = "AccessPointGroupReference"
}
export declare const V1_UserModelSchema: import("serializr").ModelSchema<V1_User>;
export declare const V1_EntitlementsAccessPointModelSchema: import("serializr").ModelSchema<V1_EntitlementsAccessPoint>;
export declare const V1_AccessPointGroupStereotypeMappingModelSchema: import("serializr").ModelSchema<V1_AccessPointGroupStereotypeMapping>;
export declare const V1_AppDirNodeModelSchema: import("serializr").ModelSchema<V1_AppDirNode>;
export declare const V1_EntitlementsDataProductModelSchema: import("serializr").ModelSchema<V1_EntitlementsDataProduct>;
export declare const V1_AccessPointGroupReferenceModelSchema: import("serializr").ModelSchema<V1_AccessPointGroupReference>;
export declare const V1_AdhocTeamModelSchema: import("serializr").ModelSchema<V1_AdhocTeam>;
export declare const V1_ProducerScopeModelSchema: import("serializr").ModelSchema<V1_ProducerScope>;
export declare const V1_dataContractModelSchema: (plugins: PureProtocolProcessorPlugin[]) => import("serializr").ModelSchema<V1_DataContract>;
export declare const V1_dataContractSubscriptionsModelSchema: (plugins: PureProtocolProcessorPlugin[]) => import("serializr").ModelSchema<V1_DataContractSubscriptions>;
export declare const V1_liteDataContractModelSchema: (plugins: PureProtocolProcessorPlugin[]) => import("serializr").ModelSchema<V1_LiteDataContract>;
export declare const V1_dataContractsResponseModelSchema: (plugins: PureProtocolProcessorPlugin[]) => import("serializr").ModelSchema<V1_DataContractsResponse>;
export declare const V1_liteDataContractsResponseModelSchema: (plugins: PureProtocolProcessorPlugin[]) => import("serializr").ModelSchema<V1_LiteDataContractsResponse>;
export declare const V1_pendingTaskWithAssigneesModelSchema: import("serializr").ModelSchema<V1_PendingTaskWithAssignees>;
export declare const V1_liteDataContractWithUserStatusModelSchema: (plugins: PureProtocolProcessorPlugin[]) => import("serializr").ModelSchema<V1_LiteDataContractWithUserStatus>;
export declare const V1_contractUserEventPrivilegeManagerPayloadModelSchema: import("serializr").ModelSchema<V1_ContractUserEventPrivilegeManagerPayload>;
export declare const V1_contractUserEventDataProducerPayloadModelSchema: import("serializr").ModelSchema<V1_ContractUserEventDataProducerPayload>;
export declare const V1_contractUserEventRecordModelSchema: import("serializr").ModelSchema<V1_ContractUserEventRecord>;
export declare const V1_taskMetadataModelSchema: import("serializr").ModelSchema<V1_TaskMetadata>;
export declare const V1_taskResponseModelSchema: import("serializr").ModelSchema<V1_TaskResponse>;
export declare const V1_pendingTasksResponseModelSchema: import("serializr").ModelSchema<V1_PendingTasksResponse>;
export declare const V1_TaskStatusChangeResponseModelSchema: import("serializr").ModelSchema<V1_TaskStatusChangeResponse>;
export declare const V1_deserializeDataContractResponse: (json: PlainObject<V1_DataContractsResponse>, plugins: PureProtocolProcessorPlugin[]) => V1_DataContractSubscriptions[];
export declare const V1_liteDataContractsResponseModelSchemaToContracts: (json: PlainObject<V1_LiteDataContractsResponse>, plugins: PureProtocolProcessorPlugin[]) => V1_LiteDataContract[];
export declare const V1_deserializeTaskResponse: (json: PlainObject<V1_TaskResponse>) => V1_TaskMetadata[];
export declare const V1_createContractPayloadModelSchema: (plugins: PureProtocolProcessorPlugin[]) => import("serializr").ModelSchema<V1_CreateContractPayload>;
export declare const V1_terminalOrderItemModelSchema: import("serializr").ModelSchema<V1_TerminalOrderItem>;
export declare const V1_serializeOrderItems: (val: Record<number, V1_TerminalOrderItem[]>) => Record<number, PlainObject<V1_TerminalOrderItem>[]>;
export declare const V1_deserializeOrderItems: (val: Record<string, PlainObject<V1_TerminalOrderItem>[]>) => Record<number, V1_TerminalOrderItem[]>;
export declare const V1_terminalProvisionPayloadModelSchema: import("serializr").ModelSchema<V1_TerminalProvisionPayload>;
export declare const V1_serializeTerminalProvisionPayload: (payload: V1_TerminalProvisionPayload) => PlainObject<V1_TerminalProvisionPayload>;
export declare const V1_deserializeTerminalProvisionPayload: (json: PlainObject<V1_TerminalProvisionPayload>) => V1_TerminalProvisionPayload;
export declare const V1_ContractUserStatusResponseModelSchema: import("serializr").ModelSchema<V1_ContractUserStatusResponse>;
export declare const V1_AdHocDeploymentDataProductOriginModelSchema: import("serializr").ModelSchema<V1_AdHocDeploymentDataProductOrigin>;
export declare const V1_SdlcDeploymentDataProductOriginModelSchema: import("serializr").ModelSchema<V1_SdlcDeploymentDataProductOrigin>;
export declare const V1_EntitlementsLakehouseEnvironmentModelSchema: import("serializr").ModelSchema<V1_EntitlementsLakehouseEnvironment>;
export declare const V1_EntitlementsDataProductDetailsModelSchema: import("serializr").ModelSchema<V1_EntitlementsDataProductDetails>;
export declare const V1_EntitlementsDataProductLiteModelSchema: import("serializr").ModelSchema<V1_EntitlementsDataProductLite>;
export declare const V1_EntitlementsDataProductDetailsResponseModelSchema: import("serializr").ModelSchema<V1_EntitlementsDataProductDetailsResponse>;
export declare const V1_EntitlementsDataProductLiteResponseModelSchema: import("serializr").ModelSchema<V1_EntitlementsDataProductLiteResponse>;
export declare const V1_entitlementsDataProductDetailsResponseToDataProductDetails: (json: PlainObject<V1_EntitlementsDataProductDetailsResponse>) => V1_EntitlementsDataProductDetails[];
export declare const V1_entitlementsDataProductLiteResponseToDataProductLite: (json: PlainObject<V1_EntitlementsDataProductLiteResponse>) => V1_EntitlementsDataProductLite[];
export declare const V1_DataContractApprovedUsersResponseModelSchema: import("serializr").ModelSchema<V1_DataContractApprovedUsersResponse>;
//# sourceMappingURL=V1_EntitlementSerializationHelper.d.ts.map